本文目錄一覽:
python集合可以用來做什麼?原來這些功能才是最實用的
集合可以像元組一樣,設置不可改變的類型;也可以默認像字典,列表一樣,可以迭代改變;同時集合里的元素可以是列表,元組,字典。
1、python集合可以用來做什麼——創建字典
可使用大括弧 { } 或者 set() 函數創建集合,注意:創建一個空集合必須用 set() 而不是 { },因為 { } 是用來創建一個空字典。
my_set = set((‘apple’,))
my_set
{‘apple’}
2、python集合可以用來做什麼——添加元素(add(),update())
# add 作為一個整體添加到集合中
my_set = set()
my_set.add(“abc”)
print(my_set)
#update 是把要傳入的元素拆分,做為個體傳入到集合中
my_set = set()
my_set.update(“abc”)
print(my_set)
3、python集合可以用來做什麼——刪除元素(remove(),pop(),discard())
#remove 如果集合種有,則直接刪除;如果沒有,程序報錯 格式:集合名.remove(元素)
my_set = {11, 13, 15}
my_set.remove(13)
print(my_set) my_set.remove(131)
print(my_set)
#pop 隨機刪除集合中的元素 如果集合中沒有元素則程序報錯
my_set = {11, 13, 15}
my_set.pop()
print(my_set)
#discard 如果集合中元素存在,直接刪除; 如果元素不存在 不做任何操作 格式: 集合名.discard(元素)
my_set = {11, 13, 15}
my_set.discard(13)
print(my_set)
my_set.discard(131)
print(my_set)
4、python集合可以用來做什麼——交集( )
set1 = {9, 2, 3, 4}
set2 = {3, 4, 5, 16}
new_set = set1 set2
print(new_set)
# result {3, 4}
5、python集合可以用來做什麼——並集( | )
set1 = {1, 2, 3, 4}
set2 = {3, 5, 5, 6}[page]
new_set = set1 | set2
print(new_set)
# result {1, 2, 3, 4, 5, 6}
6、python集合可以用來做什麼——差集(-)
項在前一個集合中,但不在後一個集合中。
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
new_set = set1 – set2
print(new_set)
# result {1, 2}
7、python集合可以用來做什麼——對稱差集( ^ )
即項在前一個集合或後一個集合中,但不會同時出現在二者中。即交集減去並集。
set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
new_set = set1 ^ set2
print(new_set)
# result {1,2,5,6}
8、python集合可以用來做什麼——子集判斷
set1 = { 3, 4}
set2 = {3, 4, 5, 6}
# 判斷set1是否是set2的子集
print(set1.issubset(set2))
# result True
9、python集合可以用來做什麼——父集判斷
set1 = { 3, 4}
set2 = {3, 4, 5, 6}
# 判斷set1是否是set2的父集
print(set1.issuperset(set2))
# result False
10、python集合可以用來做什麼——迭代和枚舉
s={34,56,76,34,56,54,43,23,56}
for i in s:
print(i) ##迭代輸出其內容
for i,v in enumerate(s):
print(‘index: %s,value: %s’ %(i,v))
“””
result:
index: 0,value: 34
index: 1,value: 43
index: 2,value: 76
index: 3,value: 54
index: 4,value: 23
index: 5,value: 56
“””
可觀察出,集合會自動過濾掉相同元素。
python集合可以用來做什麼?原來這些功能才是最實用的,集合可以像元組一樣,設置不可改變的類型;也可以默認像字典,列表一樣,可以迭代改變;同時集合里的元素可以是列表,元組,字典,你能處理好嗎?如果您還擔心自己入門不順利,那麼本科目的其他文章一定會幫助你。
Python 簡明教程 —13,Python 集合
目錄
前幾節我們已經介紹了Python 中的 列表list , 元組tuple 和 字典dict ,本節來介紹Python 中的最後一種數據結構—— 集合set 。
Python 中的 set 與 dict 很像,唯一的不同是, dict 中保存的是 鍵值對 ,而 set 中只保存 鍵 ,沒有 值 。
Python 集合 有如下特點:
Python 集合的聲明有兩種方式:
創建 空集合 時,只能用 set() ,而不能用 {} :
創建 非空集合 時,可以用 set() ,也可以用 {} :
由於集合中的元素是唯一的,如果初始化時的 可迭代 數據中有重複的元素,則會自動刪去重複的元素:
使用 len() 函數可以查看集合中元素的個數:
由於Python 集合中的元素的是無序的,所以可不能使用 下標 的方式來訪問集合中的單個元素。
我們可以使用 for 循環 來遍歷集合中的所有元素:
我們可以對兩個集合進行如下運算:
交集與並集
in 運算
使用 dir(set) 查看集合支持的所有方法:
下面一一介紹這些 非魔法方法 ,共17 個。
1. add 方法
由於集合中的元素是唯一的,向集合中添加元素時有兩種情況:
示例:
2. remove 方法
示例:
3. discard 方法
示例:
4. pop 方法
示例:
5. union 方法
示例:
6. update 方法
示例:
7. clear 方法
示例:
8. copy 方法
示例:
9. difference 方法
示例:
10. difference_update 方法
示例:
11. intersection 方法
示例:
12. intersection_update 方法
示例:
13. isdisjoint 方法
示例:
14. issubset 方法
示例:
15. issuperset 方法
示例:
16. symmetric_difference 方法
示例:
17. symmetric_difference_update 方法
示例:
(完。)
推薦閱讀:
Python 簡明教程 — 8,Python 字元串函數
Python 簡明教程 — 9,Python 編碼
Python 簡明教程 —10,Python 列表
Python 簡明教程 —11,Python 元組
Python 簡明教程 —12,Python 字典
python數據類型(集合)
1.集合(set)是一個無序不重複元素的序列(意思是有重複的會自動刪除,每次列印元素的位置不一定)
2.基本功能是進行成員關係測試和刪除重複元素
3.可以使用大括弧 { } 或者 set() 函數創建集合,注意:創建一個空集合必須用 set() 而不是 { },因為 { } 是用來創建一個空字典
4.因為set存儲的是無序集合,所以我們沒法通過索引來訪問。訪問 set中的某個元素實際上就是判斷一個元素是否在set中。
1.創建集合
s=set()#創建一個空集合
s1={1,2,3,’a’,’python’}
2.刪除重複的元素
集合是一個無序不重複元素的序列(意思是有重複的會自動刪除,每次列印元素的位置不一定)
3.成員關係測試(檢測某個成員是否在集合中)
案例:從終端輸入5位數,以空格隔開,把這5位數存入列表中,剔除重複的數據,列印出來
#提示,列錶轉集合,集合轉列表
a=input(“請輸入5位數字:”)
mylist=a.split()
print(mylist)
b=set(mylist)
c=list(b)
print(c)
4.集合常用操作
1.添加元素
2.刪除元素
3.刪除整個集合
4.獲取集合的長度
5.不支持改元素
集合操作-添加元素
格式:
集合.add(元素)
格式:
集合.update(元素)
區別:
add不能添加列表,update可以
update是將字元串中的拆分成字元進行追加
add,是當做整體追加在集合中
#案例:從終端輸入一個數字就加入集合中,然後列印,又輸入一個數字,然後列印,直到輸入-1,退出輸入
#然後列印最終的集合
ms=set()
while 1:
a=int(input(“請輸入一個數字:”))
if a==-1:
break
ms.add(a)
print(ms)
print(ms)
#案例:從終端輸入一個字元串就加入集合中,然後列印,又輸入一個字元串,然後列印,直到輸入q,退出輸入
#然後列印最終的集合,字元串要分開存儲,如輸入hello,存儲的列表是{‘h’,’e’,’l’,’0′}
ms=set()
while 1:
a=input(“請輸入一個字元串:”)
if a==’q’:
break
ms.update(a)
print(ms)
print(ms)
集合操作-刪除元素及刪除整個集合
格式:
集合.remove(元素) # 元素如果不存在會引發KeyError
集合.discard(元素) # 元素如果不存在不發生任何事
集合.pop() # 集合元素是字元串類型時刪除隨機元素。 集合元素是其他數據類型時,刪除左邊第一個元素
del 集合名 #刪除整個集合
#案例:有集合{1,2,3,’hello’,’world’},刪除全部字元串,然後最左邊第一個元素
a={1,2,3,’hello’,’world’}
a.discard(“hello”)
a.discard(“world”)
a.pop()
print(a)
集合操作-獲取集合的長度
格式:
len(集合名)
#案例:有集合{1,2,3,4,’hello’,’a’},保留1個元素,其他的刪除,假如元素個數不確定
s={1,2,3,4,’hello’,’a’}
for i in range(len(s)-1):
s.pop()
print(s)
集合的集運算
集合的交集,並集,差集,對稱差集的運算
{1,2,3,4}交集{4,5,6,7} –4 交集()
{1,2,3,4}並集{4,5,6,7} -1,2,3,4,5,6,7 並集(|)
{1,2,3,4}差集{4,5,6,7} -1,2,3 差集(-)
{1,2,3,4}對稱差集{4,5,6,7}-1,2,3,5,6,7 4同時出現在兩個集合中,不選它 對稱差集(^)
#案例:使用花括弧和set創建各一個集合,然後對集合進行交、並、差、對稱差運算
s={1,2,3,4,5,6}
s1=set([6,7,8,9,10])
print(ss1)
print(s|s1)
print(s-s1)
print(s^s1)
Python基礎實戰之集合元素的添加和刪除
集合元素的添加操作有兩種方法:
1、調用add()方法,一次添加一個元素
2、調用update()方法,至少添加一個元素
——————————
s={10,20,40,80}
s.add(30) #一次添加一個元素
print(s) #{10,30,20,40,80}
s.updae({200,300,400}) #一次至少添加一個元素
print(s) #{200,10,300,20,400,30,80,40}
s.update([800,900]) #可以添加列表
s.update((45,55)) #可以添加元組
print(s) #{200,5510,45,300,800,20,900,400,30,80,40}
——————————
集合元素的刪除操作
1、調用remove()方法,一次刪除一個指定元素,如果指定的元素不存在拋出KeyError
2、調用discard()方法,一次刪除一個指定元素,如果指定的元素不存在不拋異常
3、調用pop()方法,一次只刪除一個任意元素
4、調用clear()方法,清空集合
——————————
s.remove(200) #一次刪除一個指定元素,如果指定的元素不存在拋出KeyError
print(s) #{55,10,45,300,800,20,900,400,30,80,40}
s.discard(900) #一次刪除一個指定元素,如果指定的元素不存在不拋異常
print(s) #{55,10,45,300,800,20,400,30,80,40}
s.pop() #刪除誰不知道,任意一個元素
print(s) #{55,10,45,800,20,400,30,80,40}
s.clear() #清空集合中的所有元素
print(s) #set()
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/204368.html