if(name == "Lu") or (age == 26):
print("Hello Lu")
elif(name == "lu" or age != 26):
print("Welcome back")

else:
print("Hello")


就我对or语句中的if的理解而言,如果我没有写“ Lu”而是写数字26,则应该打印“ Hello Lu”,因为从我的理解中,如果第一个变量是如果为false,它将直接指向第二个变量;如果为true,则将打印代码。

但是,当我运行代码并为Lu改写其他名称但写正确的数字26时,它不会打印“ Hello Lu”,而是打印“ Welcome back”。

最佳答案

您的代码可以按照您认为的方式工作,例如,如果您从用户那里获取输入并记住将age转换为int类型,因为您想将其与26而不是"26"进行比较:

name = input("Enter your name:")
age = int(input("Enter your age:"))

if(name == "Lu") or (age == 26):
  print("Hello Lu")
elif(name == "lu" or age != 26):
  print("Welcome back")
else:
  print("Hello")


示例用法,其名称不同于"Lu""lu"age等于26的其他名称:

Enter your name: Ku
Enter your age: 26
Hello Lu


如您所见,它不会打印"Welcome Back"而是像您认为的那样显示"Hello Lu" :)

试玩其他输入here!

10-08 15:10