集合的运算顺序是位运算符的优先级,把差补(-)当成非(not),并集( | ) 当成按位或(or),交集( & )当成按位与(and),优先级由高到低是: - > & > ^ > |
a = {1,2,3,6,7}
b = {4,5,6,7}
c = {7,8,9}
d = {0,1,2}
e = {5}
print(a | b - c & d ^ e) # {1, 2, 3, 5, 6, 7}
print(a | (b - c) & d ^ e) # {1, 2, 3, 5, 6, 7}
print(a | ((b - c) & d) ^ e) # {1, 2, 3, 5, 6, 7}
print(a | (((b - c) & d) ^ e)) # {1, 2, 3, 5, 6, 7}
一般建议集合的运算分开进行,不建议写到一起,避免出现优先级的问题。