gpt4 book ai didi

python - 不等于 (!=) 操作在 while 循环中不起作用

转载 作者:行者123 更新时间:2023-11-28 22:41:01 25 4
gpt4 key购买 nike

关于在 python 的 while 语句中使用 != 操作是否有任何特殊规则。例如我有一个这样的代码循环

input("f_l value ")
while f_l != "s" or f_l != "S" or f_l != "q" or f_l != "Q":
print("Error")
input("f_l value ")
print("your f_l is correct")

while 循环不会停止并打印值。我不知道为什么。有什么想法吗?

最佳答案

首先,您没有input()的返回值赋给f_l,那么,它怎么可能包含要求的值(value)?你应该这样做:

f_l = input('f_l value')
while f_l != 's' or f_l != 'S' or f_l != 'q' or f_l != 'Q':
print('Error')
f_l = input('f_l value')

print('your f_l is correct')

现在, 仍然永远循环。为什么?因为 nothing 可以是 's''S''q''Q ' 同时,因为这就是您用 表示的作为循环完成条件的内容。也许您想用 替换它们?

while f_l != 's' and f_l != 'S' and f_l != 'q' and f_l != 'Q':

现在,这行得通,但仍然不是最佳选择。您正在检查所有可能的输入值,而不是简化您自己并执行类似以下操作:

while f_l.lower() not in ['s', 'q']:

关于python - 不等于 (!=) 操作在 while 循环中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33028051/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com