有谁知道为什么Python中的IF请求返回true?这是代码:
var1 = 1
if var1 == 100 or 50:
print "yes"
else:
print "no"
我无法解决这个问题,因为var1不等于100或50.
答案 0 :(得分:3)
对于if语句,它显示为if (var1 == 50) or 50
50是True
,所以打印出“是”。
如果您想查看var1
是100还是50,可以执行以下操作:
var1 = 1
if var1 == 100 or var1 == 50:
print "yes"
else:
print "no
答案 1 :(得分:2)
此if var1 == 100 or 50:
无法按照您的想法运作。
使用括号实际上看起来像if(var1 == 100) or 50
。
50不为零(零本身就是False
,非零,正或负的整数本身就是True
)所以它总是会评估True
请改用:
if var1 in (100,50):
答案 2 :(得分:0)
我认为你的语义不正确:
if var1 == 100 or var1 == 50:
似乎更有可能。