8.1 運算子和方法表
Python 語言支持運算子的重載,這意味著對象的操作不僅可以通過方法進行,還可以通過運算子,例如:+
、-
、*
、/
、|
等等。
set
類(集合)重載了所有可能的運算子,使得操作集合變得簡單且非常類似數學中的做法。
這是這些運算子的表格:
運算子 | 方法 | 描述 |
---|---|---|
| |
union() |
回傳兩個集合的聯集。 |
& |
intersection() |
回傳集合的交集(僅公共元素)。 |
- |
difference() |
回傳集合的差集(僅存在於第一個集合的元素)。 |
^ |
symmetric_difference() |
回傳集合的對稱差集(僅在一個集合中存在的元素,但不在兩個集合中都存在)。 |
<= |
issubset() |
檢查一個集合是否是另一個集合的子集合。 |
< |
issubset() |
檢查一個集合是否是另一個集合的真子集合 (嚴格子集合)。 |
>= |
issuperset() |
檢查一個集合是否是另一個集合的超集合。 |
> |
issuperset() |
檢查一個集合是否是另一個集合的真超集合 (嚴格超集合)。 |
== |
__eq__() |
檢查集合是否相等(包含相同的元素)。 |
!= |
__ne__() |
檢查集合是否不相等(包含不同的元素)。 |
在操作集合時使用運算子非常方便——你會發現這一點的。
8.2 使用運算子操作集合
聯集 (OR)
運算子 | | 使用 union() 函數 |
---|---|
|
|
交集 (AND)
運算子 & | 使用 intersection() 函數 |
---|---|
|
|
差集 (DIFFERENCE)
運算子 - | 使用 difference() 函數 |
---|---|
|
|
對稱差集 (SYMMETRIC DIFFERENCE)
運算子 ^ | 使用 symmetric_difference() 函數 |
---|---|
|
|
奇怪的是,似乎從未使用過運算子 +
或 *
,不過話說回來,Python的開發者這麼決定是有他們的原因的。
GO TO FULL VERSION