Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python while循环在任何情况下都会中断_Python_Loops_While Loop_Break - Fatal编程技术网

Python while循环在任何情况下都会中断

Python while循环在任何情况下都会中断,python,loops,while-loop,break,Python,Loops,While Loop,Break,我正在尝试制作一个掷骰子的程序,检查用户是否想继续掷骰子,如果不想,程序应该停止。尽管如此,无论您输入什么,程序都会跳出循环。有人能解释一下为什么,并给我一些技巧,使程序更简单和工作?谢谢 import random sideNumber = int(input("Enter the number of sides in the die: ")) print("Dice numbers: ") while True: print(random.randint(0, sideNumber))

我正在尝试制作一个掷骰子的程序,检查用户是否想继续掷骰子,如果不想,程序应该停止。尽管如此,无论您输入什么,程序都会跳出循环。有人能解释一下为什么,并给我一些技巧,使程序更简单和工作?谢谢

import random
sideNumber = int(input("Enter the number of sides in the die: "))
print("Dice numbers: ")

while True:
 print(random.randint(0, sideNumber))
 print("Do you want to continue?")
 response = input()
 if response == "n" or "no":
  break

这是因为语句
“no”
仍然正确

你应该做:

if response == "n" or response == "no":
或者更好:

if response in ["n", "no"] : 
使您的代码失败。这将检查
“no”
的布尔值是否为真,并且始终为真。替换为:

if response == "n" or response == "no":

如果response=='no'或response=='no'是正确的方法“否”将始终计算为true。
if response == "n" or response == "no":