这里是我的代码蟒蛇循环保持崩溃
def time_to_end_of_world(p_spread,p_cure):
...: my_world=set_up_cities()
...: zombify(my_world,0)
...: count=0
...: while is_end_of_world(my_world)==False:
...: sim_step(my_world,p_spread,p_cure)
...: count+=1
...: return count
和我不断收到1为我出
如果我将返回算出来,像这样
def time_to_end_of_world(p_spread,p_cure):
...: my_world=set_up_cities()
...: zombify(my_world,0)
...: count=0
...: while is_end_of_world(my_world)==False:
...: sim_step(my_world,p_spread,p_cure)
...: count+=1
...: return count
程序缩进崩溃...
有什么想法吗?
代码的第一个版本显然是错误的,因为它每次都在while循环的第一遍之后返回。没有更多关于你的'sim_step'的信息,我不确定在第二个版本中可能会导致崩溃。你可能会用完内存吗? – Blckknght
您需要提供崩溃功能的代码。由于您的程序在第一个示例中已经达到了return语句,所以您必须在is_end_of_world()或sim_step()中产生一些副作用,这会导致下一次执行。 – ChuckCottrill