我试图让这段代码正常工作,但我似乎无法找到合适的解决方案。
while True:
tname = input("Please enter the unit of the temperature: ")
list=["Celsius","Kelvin","Fahrenheit"]
if tname == list[0] or list[1] or list[2]:
break
elif tname is not list[0] or list[1] or list[2]:
print("Not a valid unit. Please try again.")
我希望程序在输入Celsius,Kelvin或Fahrenheit时停止,但无论我写什么,程序都会停止。你们知道解决它吗?提前致谢
答案 0 :(得分:1)
技术上正确的答案是,链接理解并不像那样;你必须这样做
if tname == list[0] or tname == list[1] or tname == list[2]:
但您考虑过使用in
吗?
if tname in list:
或类似地:
if tname not in list:
另外,我建议不要使用list
作为列表的名称,因为这也是类型的名称!