Python全棧之路 集合set常用方法

2021-08-13 23:45:17 字數 2397 閱讀 8597

集合:乙個無序的,不重複的資料組合

- 去重,列表變集合,自動去重

- 關係測試,測試兩組資料之間的交集,差集,並集等關係

set0 = set("hello")  # 建立字元集合

print("set0:", set0) # ->set0:

list1 = [1, 2, 3, 1, 2]

set1 = set(list1) # 建立數值集合

print(type(set1), set1) # ->

set2 =

set3 =

print("set1:", set1) # ->set1:

print("set2:", set2) # ->set2:

print("set3:", set3) # ->set3:

# 交集

print("set1 ∩ set2:", set1.intersection(set2)) # ->set1 ∩ set2:

print("set1 & et2:", set1 & set2) # ->set1 & et2:

# 並集

print("set1 ∪ set2:", set1.union(set2)) # ->set1 ∪ set2:

print("set1 | set2:", set1 | set2) # ->set1 | set2:

# 差集 in set1 but no in set2

print("set1-set2:", set1.difference(set2)) # ->set1-set2:

print("set2-set1:", set2.difference(set1)) # ->set2-set1:

print("set1-set2:", set1 - set2) # ->set1-set2:

print("set2-set1:", set2 - set1) # ->set2-set1:

# 對稱差集 二者中不相交的部分

print("set1-set2 ∪ set2-set1:", set1.symmetric_difference(set2))

# ->set1-set2 ∪ set2-set1:

print("set1 ^ set2:", set1 ^ set2) # ->set1 ^ set2:

# 子集

print("set3∈set1?:",set3.issubset(set1)) # ->set3∈set1?: true

print("set3 <= set1:",set3.issubset(set1)) # ->set3 <= set1: true

# 父集

print("set3∈set1?:",set1.issuperset(set3)) # ->set3∈set1?: true

print("set1 >= set3:",set1.issuperset(set3)) # ->set1 >= set3: true

# 相等

print("set1 == set2", set1 == set2) #->set1 == set2 false

print("set1 != set2", set1 != set2) #->set1 != set2 true

# 不相交

set4 =

print(set4) # ->

print("set1∩set2==null?", set1.isdisjoint(set2))

# ->set1∩set2==null? false

print("set1∩set4==null?", set1.isdisjoint(set4))

# ->set1∩set4==null? true

# 新增

print(set1) # ->

set1.add(5) # 新增一項

print(set1) # ->

set1.update([6, 7, 8, 8]) #新增多項

print(set1) # ->

# 刪除

set1.remove(5) # 指定刪除,不存在會報錯

print(set1) # ->

set1.pop() # 隨意刪除

print(set1) # ->

set1.discard(888) # 指定刪除,不存在不會報錯

# 長度

print(len(set1)) # ->5

# 成員檢查,字串,列表,集合,字典

print(6

in set1) # ->true

print(9

notin set1) # ->true

Python全棧之路基礎

2.x的預設編碼是assic,預設不支援中文。而3.x的預設編碼是unicode,預設支援中文 3.x不相容2.x,新特性只在3.x上有 3.x的核心語法更加簡單易學 變數的命名規則 要具有描述性 變數名只能 數字,字母組成,不可以是空格或特殊字元 不能以中文為變數名 不能以數字開頭 不能被使用保留...

Python全棧之路Day17

初次編輯2017年10月13日,星期五 摘要一.檔案基本操作 二.檔案操作練習 作業今日總結 引用 py西遊攻關之基礎資料型別 檔案操作流程 開啟檔案 open 讀操作for line in f.readlines 會把檔案所有都放進記憶體中 for line in f 其中f為可迭代物件,不會把所...

Python全棧之路Day12

初次編輯2017年9月29日 9 15 21 摘要一.字元編碼 二.資料型別 三.流程控制 作業今日總結 引用 alex 字元編碼 字串 列表的增刪改查 for while迴圈 ascii碼 unicode str int 整形 long 長整型 list dict set float 浮點型 多行...