[英]My break statement is not working in a while loop with an if statement?
試圖弄清楚如何創建一個接受兩個數字並將它們保存到列表中的類或函數,使用 break 語句使第二個條件以第一個的答案為條件(並確保相同的數字可以' t 被使用),而且我不知道如果我想從中創建一個類,我是否會使用repr或str語句每次都返回整個游戲。
我在 while 循環之前嘗試過 for 循環,例如(for i in fye,for e in fire),但那些要么返回整數不可迭代,然后我將 int(type) 設為 fye = list(int(input("fye") )) 然后這將返回該對象與運算符的 int 不兼容。
>>> def play():
... fye = None
... fire = None
... while fye == None:
... fye = int(input("What number am I thinking of?"))
... if fye > 5:
... print("you got it")
... fear.append(fye)
... continue
... else:
... print("wrong")
... break
... while fire == None:
... fire = int(input("what number you got now?"))
... if fire > 15:
... print("you made it")
... fear.append(fire)
... elif fire == fye:
... print("whoops try again")
... else:
... print("you got burnt up")
...
>>> play()
What number am I thinking of?3
wrong
what number you got now?27
you made it
>>> fear
[7, 27]
問題在於fye
在循環的第一次迭代中立即不是 None ,因此break
或continue
沒有做任何有意義的事情。
... while fye == None:
... fye = int(input("What number am I thinking of?"))
如果你想不斷地要求輸入直到你說break
,那么你會做while True
而不是使用全局fear
變量,在兩個 while 循環之后,您可以return [fye, fire]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.