A&B和(A)&(B)有什么区别?

时间:2019-04-12 02:57:25

标签: python

我遇到一个奇怪的情况:

print len(ROI_cord) == 4 
print len(ROI_size) == 2
print len(ROI_cord) == 4 & len(ROI_size) == 2

输出为:

True
True
False

经过痛苦的反复试验,我终于发现:

print (len(ROI_cord) == 4) & (len(ROI_size) == 2)

将给出正确的答案。 所以这是一个问题:地球上的A&B和(A&B)有什么区别?谢谢

1 个答案:

答案 0 :(得分:4)

a == 1 & b == 2a == (1 & b) == 2

按位与的优先级高于等于。

and的优先级较低,请考虑:

a == 1 and b == 2(a == 1) and (b == 2)