是否有任何选项可以使用 或
运算符在同一个 if 语句中将变量与数字和字符串进行比较?
我已经试过了,但它没有返回真实值:
print("enter you choice either 1 for yes\n 2 for no")
x=input("enter your choice")
if(x==1 or x=='yes'):
x=5
elif(x==2 or x=='no'):
x=6
print(x)
最佳答案
input
返回的是一个字符串,所以需要和字符串进行比较。
此外,您还可以使用 in
(__contains__
) 检查给定集合中实现了 __contains__
的值(可以是任何原语集合,例如 tuple
、list
、set
,但由于 O( 1) 查找,但创建集合的成本对所有人来说都是相同的):
if x in {'1', 'yes'}:
您显然可以使用 或
链来做到这一点,但那样可读性和可维护性不如使用集合。
关于python - 是否有任何选项可以使用或运算符在同一 if 语句中将变量与数字和字符串进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56984371/