一、集合
1.1 集合的特征
集合是無序的,集合中的元素是唯一的,集合一般用于元組或者列表中的元素去重
2 集合的格式
格式
變量名=set()
變量名.add(元素)
# 必須不能初始化值
或
變量名={元素,元素,,,}
注意:下面寫法為一個空字典,為空默認(rèn)是字典,如果有數(shù)據(jù)在根據(jù)格式判斷為字典還是集合
name={}
.3 添加元素
1.3.1 add
nums={11,24,45,96,28}
nums.add(42)
print(nums)
#{96, 42, 11, 45, 24, 28}
3.2 update
案例
nums={11,24,45,96,28}
nums2=["anfly","tom"]
nums.update(nums2)
print(nums)
#{96, 'anfly', 11, 45, 24, 28, 'tom'}
1.4:刪除元素
remove,pop,discard
1.4.1 remove
使用remove刪除集合中的元素 如果有直接刪除 如果沒有程序報錯
案例:該元素存在
nums={11,24,45,96,28}
nums.remove(24)
print(nums)
#{96, 11, 45, 28}
案例:該元素不存在
nums={11,24,45,96,28}
nums.remove(245)
print(nums)
#KeyError: 245
1.4.2 pop
1、如果集合的元素都是數(shù)字, 刪除時, 刪掉的是最小的數(shù)字, 其余數(shù)字升序排列
2、如果集合的元素是非數(shù)字, 刪除時, 刪掉的是隨機(jī)的元素, 其余元素隨機(jī)排列
3、如果集合里既有數(shù)字又有非數(shù)字元素, 刪除時:
若刪掉的是數(shù)字, 則一定是刪掉了最小的, 其他數(shù)字升序排列, 非數(shù)字元素隨機(jī)排列;
若刪掉的非數(shù)字, 則一定是隨機(jī)刪掉了一個, 其他數(shù)字升序排列, 非數(shù)字則隨機(jī)排列.
如果集合沒有元素程序報錯
案例:有元素
nums={11,24,45,96,28}
nums.pop()
print(nums)
#{11, 45, 24, 28}
案例:無元素
nums={}
nums.pop()
print(nums)
#TypeError: pop expected at least 1 arguments, got 0
1.4.3 discard
使用discard刪除 如果元素存在直接刪除 如果元素不存在不做任何操作
案例:該元素存在
nums={11,24,45,96,28}
nums.discard(24)
print(nums)
#{96, 11, 45, 28}
案例:該元素不存在
nums={11,24,45,96,28}
nums.discard(242)
print(nums)
#{96, 11, 45, 24, 28}
1.5:集合的交集和并集
1.5.1:交集
使用&連接多個集合,得到相同的元素
案例:存在相同元素
set1={"anfly","tom","haha"}
set2={"anfly","susala"}
set3=set1&set2
print(set3)
#返回值:{'anfly'}
1.5.2:并集
使用|連接多個集合,得到全部集合中全部的元素
案例:
set1={1,2,3,4}
set2={3,4,5,6}
new_set=set1|set2
rint(new_set)
#{1, 2, 3, 4, 5, 6}