我想做
if ((a,b,c==1,1,1)):
<do something if a,b,c are all 1>
以上,不起作用。会有类似的东西吗?
以下是一些不符合以下评论的示例。 这看起来很明智
if((1,1,0)==(1,1,0)): print("same")
same
就像这样
if((1,1,0)!=(1,1,1)): print("different")
different
In [86]: if(1,1,0==1,1,0): print("same")
same
In [87]: if(1,1,0==1,1,1): print("same")
same
In [88]: if(1,0,0==1,1,1): print("same")
same
所以我的原始Q实际上是与括号括号相关的问题。 if将传递TRUE,因为没有列表或元组之间的比较我只是比较==或!=
两侧的中心元素答案 0 :(得分:0)
我让这个工作
if [a,b,c]==[1,1,1]:
这也很好
if (a,b,c)==(1,1,1):
此代码简短,可重复且可验证。万一有人想知道。
我在这里看到的根本错误是我有效地做了
if (1,1,1==1,0,1): ...
而不是
if (1,1,1)==(1,0,1): ...
因为
if (1,1,0 == 0,0,0): print ("same")
...
same
即
>>> 1,1,0==0,0,0
(1,1,True,0,0)
尽管
>>> (1,1,0)==(0,0,0)
False
换句话说,我只用==的第一个RHS来测试LHS的最后一个元素。