一般來說,python中常用的資料結構是:列表(list)、字典(dict)、元組(tuple)。但是我們常常還會看到另外一種結構:集合(set)。
個人認為,字典(dict)就是一種特殊的集合(set),它特殊的地方是集合的元素之間有一對一的對應關係。
集合,在定義上來說就是無序不重複的元素集,set裡面可以是多種資料型別(但不能是列表,集合,字典,可以是元組)。
需要注意的是集合是無序的,所以不能用下標來訪問。
## 1. 集合的建立
m = [1,2,9,6,3,4,6,7,8,7,6,4]
a = set(m)
print(a)
列印結果:
## 2 集合的操作(s 代表乙個集合)
- 2.1 s.add( x )
將元素 x 新增到集合s中,若重複則不進行任何操作
m = [1,2,9,6,3,4,6,7,8,7,6,4]
s = set(m)
s.add(7)
print
(s)s.add
(10)
print
(s)列印結果:
m = [1,2,9,6,3,4,6,7,8,7,6,4]
s = set(m)
x =
s.update(x)
print(s)
列印結果:
m = [1,2,9,6,3,4,6,7,8,7,6,4]
s = set(m)
s.discard(5)
s.discard(77)
print(s)
列印結果:
m = [1,2,9,6,3,4,6,7,8,7,6,4]
s = set(m)
s.remove(4)
print(s)
s.remove(5)
print(s)
列印結果:
traceback (most recent call last):
file "d:/home/temp/temp_set.py", line 5, in
s.remove(5)
keyerror:
5
可以看出discard和remove的區別。
m = [1,2,9,6,3,4,6,7,8,7,6,4]
s = set(m)
s.pop()
print(s)
s.pop()
print(s)
clear():清空
in操作
union( x ) 返回s與集合x的交集,不改變原集合s,x 也可以是列表,元組,字典。
intersection( x ) 返回s與集合x的並集,不改變s, x 也可以是列表,元組,字典。
difference( x )返回在集合s中而不在集合 x 中的元素的集合,不改變集合s, x 也可以是列表,元組,字典。
s.symmetric_difference( x ) 返回s和集合x的對稱差集,即只在其中乙個集合中出現的元素,不改變集合s, x 也可以是列表,元組,字典。
s.issubset( x ) 判斷 集合s 是否是 集合x 子集
s.issuperset( x ) 判斷 集合x 是否是集合s的子集
Python學習筆記(26)集合
學習主題 集合 學習日期 2020 02 08 python 版本 3.7.4 好了,那就按照這個路子開始吧 1.集合的定義 集合,列表,元組的對比。num type num class set 說明這是乙個集合 num 1 2,3 type num class list 說明這是乙個列表 num ...
Python學習筆記 七 集合
集合 set 是乙個無序的不重複元素序列。建立格式 parame 或者set value print basket 這裡演示的是去重功能 orange in basket 快速判斷元素是否在集合內 true crabgrass in basket false 下面展示兩個集合間的運算.a set a...
Python學習筆記 10 集合
集合 set。1 天生可以去重。2 集合是無序的,沒有下標可取值。l 1,1,2,2,3,3 res set l print res 執行結果。集合和字典一樣用大括號。但是字典有冒號,k和v。集合沒有。l list res 去重後在轉回list jihe set 定義乙個空的集合 xingneng ...