日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

set集合

發(fā)布時間:2023/12/13 综合教程 20 生活家
生活随笔 收集整理的這篇文章主要介紹了 set集合 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

集合是無序的,不重復(fù)的數(shù)據(jù)集合,它里面的元素是可塔哈希的(不可變類型),但是集合本身是不可哈希(所以集合做不了字典的鍵)的。

集合的特點:

  1、它是無序的,且是不重復(fù)的
  2、集合里的元素必須是可哈希的(int、str、bool、tuple),但是它本身是不可哈希的
  3、集合不能更改其內(nèi)部的元素,只能新增和刪除
  4、集合可以求交集、并集、差集、反交集等

#利用集合去重
lis = [1,1,2,2,3,3,3,4,5,6,6,7]
set1 = set(lis)
lis = list(set1)
print(lis)          #[1, 2, 3, 4, 5, 6, 7] 

集合的日常操作:

1、集合的創(chuàng)建

set1 = set({1,2,'alex'})
set2 = {'alex','wusir','egon'}

2、集合的增加

set1 = set({1,2,3})
#1、set.add(obj) 添加一個元素
set1.add('wukong')
print(set1)         #{'wukong', 1, 2, 3}

#2、set.update(seq) 迭代著將每一個元素逐一添加進去
set1.update('abc')
print(set1)         #{1, 2, 3, 'wukong', 'c', 'a', 'b'}

3、集合的刪除

#刪除集合元素
set1 = {'alex','wusir','ritian','egon','barry'}
#1、set.remove(obj) 按照元素去刪除
set1.remove('ritian')
print(set1)             #{'alex', 'egon', 'barry', 'wusir'}

#2、set.pop() 隨機刪除某個元素
set1.pop()
print(set1)             #{'wusir', 'egon', 'alex'}

4、清空集合、刪除集合

set1 = {'alex','wusir','ritian','egon','barry'}
#1、清空集合 set.clear()
set1.clear()
print(set1)         #set()

#2、刪除集合 del set
del set1
print(set1)         #報錯: name 'set1' is not defined

5、集合的查詢

set1 = {'alex','egon','barry'}
for item in set1:
    print(item, end='  ')       #alex  egon  barry

6、集合的其它操作

6.1、交集

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
#1、使用 &
print(set1 & set2)              #{4, 5}
#2、intersection()
print(set1.intersection(set2))  #{4, 5}

6.2、并集

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
#1、使用 |
print(set1 | set2)          #{1, 2, 3, 4, 5, 6, 7, 8}
#2、union()
print(set1.union(set2))     #{1, 2, 3, 4, 5, 6, 7, 8}

6.3、反交集

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
#1、使用 ^
print(set1 ^ set2)                      #{1, 2, 3, 6, 7, 8}
#2、symmetric_difference()
print(set1.symmetric_difference(set2))  #{1, 2, 3, 6, 7, 8}

6.4、差集

set1 = {1,2,3,4,5}
set2 = {4,5,6,7,8}
#1、使用 - 
print(set1 - set2)              #{1, 2, 3}
print(set2 - set1)              #{8, 6, 7}
#2、difference()
print(set1.difference(set2))    #{1, 2, 3}

6.5、子集與超集

set1 = {1,2,3}
set2 = {1,2,3,4,5,6}

#1、子集 <、issubset()
print(set1 < set2)              #True
print(set1.issubset(set2))      #True
#2、超集 >、issuperset()
print(set2 > set1)              #True
print(set2.issuperset(set1))    #True

7、frozenset()不可變集合,讓集合變成不可變類型

set1 = {1,2,3}
set2 = frozenset(set1)
print(set2,type(set2))  #frozenset({1, 2, 3}) <class 'frozenset'>

  

總結(jié)

以上是生活随笔為你收集整理的set集合的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。