python while 循环在满足条件后仍在运行 [duplicate]

python while loop still running after a condition is met [duplicate]

提问人:rish 提问时间:10/20/2023 最后编辑:Andrej Keselyrish 更新时间:10/20/2023 访问量:39

问:

在过去的几天里,我一直在愉快地学习 python,但今天却不那么高兴了。即使满足条件,我也隔离了下面的循环及其运行。

关于为什么的任何想法?

a = input("enter yes or no").lower


while a != "yes" or "no":
    a = input("Please enter a valid response: ").lower

我试过了. 我试过删除“或”,只将一个条件设置为“是”。 我尝试将 != 更改为 == “yes” 仍然没有脱离循环 我已将代码复制到一个新文件并自行运行 我一直在一开始运行print语句,以确保代码在运行时被保存 我试过用指甲捣过我的眼睑str(a)

在这一点上,我觉得我一定有一些根本性的误解。

python 字符串 循环 while 循环 整数

评论

0赞 Mark Ransom 10/20/2023
你根本的误解是如何运作的。or
0赞 mozway 10/20/2023
a != "yes" or "no"总是True
0赞 PM 77-1 10/20/2023
stackoverflow.com/questions/15112125/......
0赞 Mark Ransom 10/20/2023
哦,设置为函数而不是函数调用结果无济于事。a
2赞 Paul Cornelius 10/20/2023
您有两个错误:首先,您需要使用以下语法调用函数:而不仅仅是 .其次,Python 中的“or”运算符会自行计算每个表达式,因此您需要将 if 语句编写为 .您应该阅读基本的 Python 教程来了解原因。最后,我为其他 StackOverflow 用户道歉,他们似乎更喜欢用聪明的评论给对方留下深刻印象,而不是帮助新手解决基本问题。lowerlower()lowerif a !='yes' or a != 'no'

答: 暂无答案