Python set 运算符优先级:差集最高,并集最低,使用括号确保计算顺序。

运算符优先级(从高到低)

运算符名称优先级
()括号最高
-差集1
&交集2
^对称差集3
|并集4(最低)

示例

A = {1, 2, 3, 4}
B = {3, 4, 5, 6}
C = {5, 6, 7, 8}
 
# 差集优先级高于并集
A | B - C  # 等价于 A | (B - C) → {1, 2, 3, 4, 5}
 
# 交集优先级高于并集
A | B & C  # 等价于 A | (B & C) → {1, 2, 3, 4, 5, 6}
 
# 交集优先级高于对称差集
A ^ B & C  # 等价于 A ^ (B & C) → {1, 2, 3, 4, 7, 8}
 
# 括号改变优先级
(A | B) - C  # {1, 2, 3, 4}

规则总结

  1. -(差集)最高
  2. &(交集)次高
  3. ^(对称差)次之
  4. |(并集)最低
  5. () 可改变默认优先级

实践建议:复杂运算使用括号明确顺序,避免歧义。