循环python中的循环中断

谢里什·米什拉(Shailesh Mishra)

抱歉,我是编程新手,现在遇到了一个简单的嵌套循环问题。

我正在尝试编写一个非常简单的中子通过平板在一维中传播的模型。这个想法是我从x0 = 0开始,将中子向前移动一个随机距离,检查其是否被吸收,如果未被吸收,它会再次移动一个随机距离,然后直到移动xd = 10为止。移到xd的右侧或xd的左侧或被吸收。我对此有一个简单的循环内循环问题。我确信它有一个简单的解决方案,只是我对编程的兴趣不大。以下是到目前为止我在python 2.7中编写的代码。

    import random
    N = 100 # number of neutrons
    Nt= 0   # number of neutrons transmitted
    Na = 0  # number of neutrons absorbed
    Nr = 0 # number of neutrons reflected

    x0 = 0 
    xd = 10
    x = x0 #start position

    j = 1
    while j<= N #loop starts
        x+ = random.uniform(-1,1)
         if x > xd:
            Nt+ = 1
         elif x < x0:
            Nr+ = 1 
         else:
            gamma = random.uniform(0,1)
            if gamma <0.5:
            Na+ = 1
            else:
                continue # it should loop back and calculate x+=random.uniform(-1,1)
      x = x0
      j+= 1
    print Nr, Na, Nt

在最后的else语句之后,它必须循​​环回到第一个if条件,并继续检查中子的位置。显然,这不是在这里发生。怎么做呢?

蕾丝

您将需要一个循环来实现它

import random
x0 = 0
xd = 10
x = x0 # start position

# simulates a single neutron, add an outer loop for N number of neutrons
while 1: #loops forever until explicit breaks
     x+ = random.uniform(-1,1) # move
     if x > xd:
        print 'neutron has transmitted'
        break # get out of loop
     if x < x0:
        print 'neutron has reflected'
        break # get out of loop

     if random.uniform(0,1) <0.5:
        print 'neutron has absorbed'
        break # get out of loop
     # at this point the loop repeats from the start

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Java中的循环中断

来自分类Dev

Python 3 - While 循环中断

来自分类Dev

迭代期间循环中断:Python、Pandas

来自分类Dev

php中的循环中断问题

来自分类Dev

在foreach()循环中中断if

来自分类Dev

python中的中断循环问题

来自分类Dev

python中的for循环中的变量

来自分类Dev

循环中断在结束之前

来自分类Dev

如何避免循环中断?

来自分类Dev

java循环中断与if语句?

来自分类Dev

延迟 for 循环中断函数

来自分类Dev

在循环中中断 <option> 项

来自分类Dev

用循环中断程序

来自分类Dev

在while循环中中断while循环

来自分类Dev

在循环中遇到问题并在php中中断

来自分类Dev

for 循环中的条件继续中断函数中的 errexit

来自分类Dev

在循环中调用 ssh 命令时 bash 循环中断

来自分类Dev

在 JavaScript 中中断 for 循环

来自分类Dev

在Python中的for循环中修改迭代器

来自分类Dev

嵌套在python中的for循环中

来自分类Dev

在Python中的for循环中调用列表变量

来自分类Dev

在python中的for循环中合并数据帧

来自分类Dev

在python中的for循环中更新matplotlib图形

来自分类Dev

for循环中Python中的多线程

来自分类Dev

for循环中的列表在Python中如何工作?

来自分类Dev

在Python中的for循环中调用列表变量

来自分类Dev

PHP从2个循环中断

来自分类Dev

单击按钮从循环中断-C#

来自分类Dev

返回true,然后从for循环中中断