我试图理解为什么我编写的代码总是显示true,即使它应该命中false?

word = "the sky is blue"
checkList = ["a", "e", "i", "o", "u"]

for i in word.lower():
    if (i != checkList[0]) or (i != checkList[1]) or (i != checkList[2]) or (i != checkList[3]) or (i != checkList[4]):
    print("true")
else:
    continue

最佳答案

在Python中,condition以一种特殊的方式工作:如果第一个条件为true,它将不检查其他条件,但是如果条件为or,它将检查所有其他条件,除非它找到false的条件。在您的情况下,您可以这样做:

word = "the sky is blue"
checkList = ["a", "e", "i", "o", "u"]

for i in word.lower():
    if i in checkList:
         print("true")
    else:
        continue

08-19 21:26