【问题标题】:how do I break while loop by raw_input()? python 3如何通过 raw_input() 打破 while 循环?蟒蛇 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”一样?幕后发生了什么?

任何帮助将不胜感激。在此先感谢:)

【问题讨论】:

    标签: python-3.x loops input while-loop


    【解决方案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' ")
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-28
      • 1970-01-01
      • 1970-01-01
      • 2020-09-18
      • 2020-03-28
      相关资源
      最近更新 更多