前言
在Python中,我們用[ ]
集合 set
集合(est)是一個無序的不重複元素序列,集合中的元素不能重複且沒有順序,所以不能通過索引和分片進行操作。
如何創建set
•set() 創建一個集合,需要提供一個序列(可迭代的對象)作為輸入參數:
<code>#字符串
>>> set('abc')
{'a', 'b', 'c'}
#列表
>>> set(['a','b','c'])
{'a', 'b', 'c'}
#元組
>>> set(('a','b','c'))
{'a', 'b', 'c'}
# 集合中的元素不重複
>>> set('aabc')
{'a', 'b', 'c'}
#整數
>>> set(123)
Traceback (most recent call last):
File "<pyshell>", line 1, in <module>
set(123)
TypeError: 'int' object is not iterable/<module>/<pyshell>/<code>
•{ }
<code>>>> {1,2,3}
{1, 2, 3}
>>> a = {1,2,3}
>>> type(a)
<class>
/<class>/<code>
但注意 利用 {} 來創建集合不能創建空集合,因為 {} 是用來創造一個空的字典
set的常用方法
•set`的添加和刪除,更新
<code>>>> a = set('abc')
>>> a
{'a', 'b', 'c'}
#添加元素
>>> a.add('d')
>>> a
{'a', 'b', 'd', 'c'}
#重複添加無效果
>>> a.add('d')
>>> a
{'a', 'b', 'd', 'c'}
#刪除元素
>>> a.remove('c')
>>> a
{'a', 'b', 'd'}
#update 把要傳入的元素拆分,作為個體傳入到集合中
>>> a.update('abdon')
>>> a
{a', 'b', 'd', 'o', 'n' }
/<code>
•set的集合操作符
<code>>>> a = set('abc')
>>> b = set('cdef')
>>> a&b
{'c'}
>>> a | b
{'a', 'b', 'f', 'c', 'd', 'e'}
>>> a -b
{'a', 'b'}
>>> 'a' in a
True
>>> 'e' in a
False
>>> a != b
True
>>> a == b
False/<code>
集合還有不可變集合frozenset,用的不多,有興趣的同學可以自行學習下!
閱讀更多 測試開發圈子 的文章