Python集合 set

2022-06-23 14:03:11 字數 2332 閱讀 7488

set是一個無序不重複的序列,可以用{}或者set()函式建立集合,它存放不可變型別(如字串、數字、元組)資料。

注意:建立一個空集合必須使用set()方法,因為{}是用來生成一個空字典的。

將元素新增到集合中。

s1 = 

s1.add('new_number')

print(s1)

可一次更新多個值。

# update(x),將x新增到集合中,且引數可以是列表、元組、字典等

s2 = set(('aaa', 'ccc', 'fff'))

# 新增字典只能新增不可變的--鍵

dict_1 =

s2.update(dict_1)

print("新集合", s2)

新集合

移除集合中的某個元素。

s3 = set(('aaa', 'ccc', 'fff'))

s3.remove('ccc')

print(s3)

此外還有一個discard()函式也能移除集合中的元素,與remove()不同的是,移除的元素是字典中沒有的元素時discard()不會報錯。

隨機刪除集合中的一個元素。

s4 = set(('aaa', 'ccc', 'fff'))

s4.pop()

print(s4)

清空集合

複製一個新的集合。

s6 = s5.copy()

print(s6)

求差集,也可以用-

s = set(('a', 'cc', 'f'))

s1 =

# 兩種求差集的方法

print("在s中不在s1中: ", s.difference(s1))

print("在s1中不在s中: ", s1-s)在s中不在s1中:

在s1中不在s中:

求交集,也可以用&

s = set(('a', 'cc', 'f'))

s1 =

# 同時在集合s 和 s1 中的元素

print(s.intersection(s1))

print(s1&s)

求並集,也可以用|

s = set(('a', 'cc', 'f'))

s1 =

# 元素在集合 s 中或在集合 s1 中

print(s.union(s1))

print(s1|s)

求對稱差集,也可以用^

s = set(('a', 'cc', 'f'))

s1 =

# 除集合s和集合s1共有的以外的元素

print(s.symmetric_difference(s1))

print(s1^s)

判斷一個集合是否是另一個集合的子集.

s = set(('a', 'cc', 'f'))

s1 =

print(s.issubset(s1))

print(s1.issubset(s))

判斷一個集合是否是另一個集合的父集.

s = set(('a', 'cc', 'f'))

s1 =

print(s.issuperset(s1))

print(s1.issuperset(s))

# s1是s的子集,s是s1的父集

print(s1.issubset(s))

檢測2個集合是否不存在交集,如果存在交集,則返回false

s1 = 

s2 =

s3 =

print(s1.isdisjoint(s2))

print(s1.isdisjoint(s3))

定義不可變集合

s = frozenset('a', 'b')

python set集合

python的set是一個無序不重複元素集,基本功能包括關係測試和消除重複元素 集合物件還支援並 交 差 對稱差等。 1 建立集合 a print type a set b set abc abc 123 123 print type b set 2 演示交集 print a b set 123 a...

python set集合

set 生成一個空集合 set iterable 可通過可迭代物件生產一個新的集合 s1 set s2 set range 5 s3 set list range 10 s4 這是字典的定義方法 s5 sets6 s7 set的元素要求必須可以hash 列表不能hash add elem updat...

python 集合set

在python set是基本資料型別中的一種集合型別,它有可變集合 set 和不可變集合 frozenset 兩種。set是一個無序不重複元素集,基本功能包括關係測試和消除重複元素 集合物件還支援並 交 差 對稱差等。 sets 支援 x in set len set 和 for x in set。...