即使我输入“no”,并且当我输入“jdlfjap”时,该循环仍然保持循环,例如,它会继续循环而没有“?”。为什么while while循环不起作用?
有谁知道这是为什么?
def makeContact():
contactName = input("Name: ")
contactNumber = input("Number: ")
dictionaryForContacts[contactName] = contactNumber
def continueMaking():
while True:
continueMaking = input("\nWould you like to continue making contacts? ")
if continueMaking == "Yes" or "yes" or "YES":
makeContact()
continue
elif continueMaking == "No" or "no" or "NO":
break
else:
print ("?")
continue
'continueMaking ==“No”或“no”或“NO”'不会做你认为它做的事。它不会比较这3个单词中的每一个的“continueMaking”。 – lurker
使用'lower()'或checkout ['in'](https://docs.python.org/3/reference/expressions.html#in) – sam
重写为'if continueMaking in(“Yes”,“yes” ,“YES”)'或'if continueMaking.strip()。lower()==“yes”' – dawg