如何通过 raw_input() 打破 while 循环?蟒蛇 3
Posted
技术标签:
【中文标题】如何通过 raw_input() 打破 while 循环?蟒蛇 3【英文标题】:how do I break while loop by raw_input()? python 3 【发布时间】:2019-05-19 11:31:28 【问题描述】:我需要一些帮助来理解以下内容之间的区别。在第一个示例中,我希望当用户输入 False 时循环中断:
true = True
while true:
print("Not broken")
true = input("to break loop enter 'False' ")
有一个问题被问到: how do I break infinite while loop with user input
这给出了这个解决方案:
true= True
while true:
print("Not broken")
true = input("to break loop enter 'n' ")
if true == "n":
break
else:
continue
我不明白为什么第一种方法不起作用而第二种方法起作用???为什么 python 不接受输入,就好像有人在更改脚本并更改变量“true”一样?幕后发生了什么?
任何帮助将不胜感激。在此先感谢:)
【问题讨论】:
【参考方案1】:while 语句是有条件的,输入字符串“False”的用户仍将解析为 True 结果。
要了解 Python 认为什么是真假,请查看此链接:https://realpython.com/python-conditional-statements/
基于这个答案Converting from a string to boolean in Python?,最好的检查方法是:
true = True
while true is not 'False':
print("Not broken")
true = input("to break loop enter 'False' ")
【讨论】:
以上是关于如何通过 raw_input() 打破 while 循环?蟒蛇 3的主要内容,如果未能解决你的问题,请参考以下文章