Python數據類型詳解——集合
一、定義
集合跟列表有點像,也是可以存一堆數據的,不過它有幾個獨特的特點:
1、集合里的元素不可變,即不能再集合里存儲列表(list)、字典(dict)。字符串、數字、元組等不可變類型可以存儲再集合中。
2、天生去重,即在集合里不會出現重復元素,就算你故意寫入重復元素,集合也會自動去掉重復的,只保留一個。
3、無序,集合中的元素沒有先后之分。
二、語法
1、創建集合
a = {2, 321, 'Kwan', 1, '小明', 'Kwan', 321}
2、幫助列表去重
將列表轉換成集合,再轉回列表,即可實現列表的去重
a = ['Kwan', 'Kwan', 21, 21, '小明']
a = list(set(a)) # 先轉換成集合,再轉換成列表
三、增刪查改操作
a = {'Kwan', 21, 'male', 'LL', 43}
# 增
a.add('Kobe')
# 刪
a.discard('male') # 用discard()方法,刪除指定的元素,若指定元素不存在,則do nothing
a.pop() # 用pop()方法,隨即刪除一個元素并返回這個元素
a.remove('LL') # 用remove()方法,同discard
# 查
if 'Kwan' in a: # 用in方法
pass
# 改(沒有改這個操作,集合不能改)
四、關系運算
a1 = {'Kwan', '小明', 'LL', 'PP', 'Kobe'}
a2 = {'小明', 'LL', 'Alice', 'Jack', 'Neal'}
print(a1 & a2) # &交集運算
print(a1 | a2) # |并集運算
print(a1 - a2) # -差集運算
print(a2 - a1)
print(a1 ^ a2) # ^對稱差集運算
print(a1.isdisjoint(a2)) # 判斷兩個集合是不是相交的,返回True或者False
print(a1.issubset(a2)) # 判斷a1是不是a2的子集,返回True或者False
print(a1.issuperset(a2)) # 判斷a1是不是a2的父集,返回True或者False
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
