首页 > 解决方案 > Python:在while循环中结束执行

问题描述

我们是初学者,想用 Python 编写游戏 Mastermind。(请参阅下面的代码。) 问题:如果在“while”循环中发生“StopIteration”错误,我们想结束代码的执行。但不知何故,'quit()' 在这个地方不起作用。谁能给我们一个线索如何解决这个问题?

def inconsistent(new_guess, guesses):
   for guess in guesses:
      res = check(guess[0], new_guess)
      (rightly_positioned, right_colour) = guess[1]
      if res != [rightly_positioned, right_colour]:
         return True # inconsistent
   return False # i.e. consistent

while inconsistent (new_guess, guesses):
        try:
            new_guess=next(generator)
        except StopIteration:
            print("Error: Your answers were inconsistent!")
            break

标签: pythonwhile-loop

解决方案


休息应该工作。如果你想跳过这个猜测,你可以使用

continue

推荐阅读