如何解决 "break outside loop"?

问题描述 投票:-1回答:1
number = 12
apple = True

'''def quit():
    if guess == "quit":
        break
    print ("Exit")'''

while apple:
    guess = int(input("Write a number: "))

    quit()

    if guess == number:
        print ("Correctly")
        running = False

    elif guees < number:
        print ("Number greater than")

    else:
        print ("Number less than")

else:
    print("End of the cycle")```
python break
1个回答
1
投票

看起来你是想通过在循环中调用的函数来脱离循环。这是不可能的。然而,你可以返回是否应该打破循环。

def shouldQuit(guess):
    return guess == 'quit'

而在你的循环中

while apple:
    guess = int(input("Write a number: "))

    if shouldQuit(guess):
        break

    ...

但是.., guess 不等于 quit,因为你已经把输入转成了一个整数。


0
投票
def quit(guess):
    if guess == "quit":
        Return True
    Return False

while apple:
    guess = int(input("Write a number: "))

    if quit(guess):
        break

    ...etc

0
投票
n = '10'
while True:
   guess = input(': ')
   if guess == 'quit':
      print("let's quit")
      break
   elif guess == n:
      print('right!')
   elif guess > n:
      print('too high')
   else:
      print('too low')

我认为这应该工作


0
投票

目前的写法是,如果输入()取的不是一个数字,你会得到一个ValueError。所以其他所有的答案都会在不处理异常的情况下出错。

 while apple:
        try:
            guess = int(input("Write a number: "))
        except ValueError:
            print('Exit')
            exit()
        else:
            ...etc
© www.soinside.com 2019 - 2024. All rights reserved.