1. 程式人生 > >Python3之集合set常用的方法

Python3之集合set常用的方法

集合set常用的方法

方法 意義
S.add(e) 在集合中新增一個新的元素e;如果元素已經存在,則不新增
S.remove(e) 從集合中刪除一個元素,如果元素不存在於集合中,則會產生一個KeyError錯誤
S.discard(e) 從集合S中移除一個元素e,在元素e不存在時什麼都不做;
S.clear() 清空集合內的所有元素
S.copy() 將集合進行一次淺拷貝
S.pop() 從集合S中刪除一個隨機元素;如果此集合為空,則引發KeyError異常
S.update(s2) 等同於 S

舉例說明:

add的用法

>>> s = {1,2,3}
>>> s.add(1)
>>> s
{1, 2, 3}
>>> s.add(4)
>>> s
{1, 2, 3, 4}

新增新元素,如果集合裡已經有了則什麼都不新增,如果沒有,則新增該元素

remove的用法

>>> s = {1, 2, 3, 4}
>>> s.remove(1)
>>> s
{2, 3, 4}
>>> s.remove(100)  # 集合中沒有的話會報錯
Traceback (most recent call last): File "<pyshell#9>", line 1, in <module> s.remove(100) KeyError: 100

discard(e)的用法

>>> s = {2, 3, 4}
>>> s.discard(2)
>>> s
{3, 4}
>>> s.discard(100)  # 同remove不同,如果不存在也不會報錯,只是什麼也不執行
>>> s
{3, 4}

pop()的用法

>>> s = {3, 4}
>>> s.pop()  # 隨機移除一個元素
3
>>> s
{4}
>>> s.pop(100)  # 集合是無序的,不需要索引值
Traceback (most recent call last):
  File "<pyshell#17>", line 1, in <module>
    s.pop(100)
TypeError: pop() takes no arguments (1 given)

>>> s = set()
>>> s.pop()  # 集合為空的話使用pop會報錯
Traceback (most recent call last):
  File "<pyshell#20>", line 1, in <module>
    s.pop()
KeyError: 'pop from an empty set'

本節完