Python 集合

Python 中的集合 set 型別

Python 中的集合 set 是物件的集合。集合在 Python 2.4 和更新版本中可用。它們與列表或元組不同,因為它們是在數學集合之後建模的。

Python set 型別舉例

要建立一個集合,我們使用 set() 函式。

#!/usr/bin/env python
 
x = set(["Postcard", "Radio", "Telegram"])
print(x)

如果我們多次新增相同的元素,則會刪除它們。一個集合不會包含多個相同的元素。

#!/usr/bin/env python
 
x = set(["Postcard", "Radio", "Telegram", "Postcard"])
print(x)

Python 集合的簡單表示法

如果你使用的是 Python 2.6 或更高版本,則可以使用簡化的表示法:

#!/usr/bin/env python
 
x = set(["Postcard", "Radio", "Telegram"])
print(x)
 
y = {"Postcard","Radio","Telegram"}
print(y)

集合方法

從集合中清除元素

刪除所有元素:

#!/usr/bin/env python

x = set(["Postcard", "Radio", "Telegram"])
x.clear()
print(x)

向集合中新增元素

新增元素:

#!/usr/bin/env python
 
x = set(["Postcard", "Radio", "Telegram"])
x.add("Telephone")
print(x)

刪除集合中的元素

要刪除集合中的元素:

!/usr/bin/env python
 
x = set(["Postcard", "Radio", "Telegram"])
x.remove("Radio")
print(x)

兩個集合間的不同

要找到兩個集合之間的區別,請使用:

#!/usr/bin/env python
x = set(["Postcard", "Radio", "Telegram"])
y = set(["Radio","Television"])
print( x.difference(y) )
print( y.difference(x) )

請注意,x.difference(y)y.difference(x) 不同。

一個集合是否是另外一個的子集

要測試集合是否為子集,請使用:

#!/usr/bin/env python
 
x = set(["a","b","c","d"])
y = set(["c","d"])
print( x.issubset(y) )

是否是超集

測試集是否為超集:

#!/usr/bin/env python
 
x = set(["a","b","c","d"])
y = set(["c","d"])
print( x.issuperset(y) )

尋找交集

要測試交集,請使用:

#!/usr/bin/env python
 
x = set(["a","b","c","d"])
y = set(["c","d"])
print( x.intersection(y) )