python學(xué)習(xí)筆記---集合的定義和操作(自用)
集合的特點(diǎn)
集合內(nèi)不允許重復(fù)元素(去重)
集合內(nèi)的元素是無序的(不支持下標(biāo)索引)
集合的定義
基本語法:
#定義集合字面量
{元素,元素,元素......}
#定義集合變量
變量名稱={元素,元素,元素,......元素}
#定義空集合
變量名稱=set()
集合的常用操作---修改
添加新元素
語法:集合.add(元素)。將指定元素,添加到集合內(nèi)。
結(jié)果:集合本身被修改,添加了新元素。
set1={'hello','world'}
set1.add('python')
print(set1) ? ?#結(jié)果:{'world', 'hello', 'python'}
移除元素
語法:集合.remove(元素),將指定元素從集合內(nèi)移除
結(jié)果:集合本身被修改,移除了元素
set1={'hello','world','python'}?
set1.remove('python')
print(set1) ? ?#結(jié)果:{'world', 'hello'}
從集合中隨機(jī)取出元素
語法:集合.pop(),從集合中隨機(jī)取出一個(gè)元素
結(jié)果:會(huì)得到一個(gè)元素,同時(shí)集合本身被修改,元素被移除
set1={'hello','world','python'}
result=set1.pop()?
print(result)??
?#結(jié)果:hello?
print(set1) ? ? ?#結(jié)果:{'python', 'world'}
清空集合
語法:集合.clear()
取出兩個(gè)集合的差集
語法:集合1.difference(集合2)
功能:取出集合1和集合2的差集(集合1有而集合2沒有)
結(jié)果:得到一個(gè)新集合,集合1和集合2不變
set1={1,2,3,4}
set2={2,3,4,5,6}
set3=set1.difference(set2)
print(set3) ? ?#結(jié)果:{1}?
print(set1) ? ?#結(jié)果:{1, 2, 3, 4}?
print(set2) ? ?#結(jié)果:{2, 3, 4, 5, 6}
消除兩個(gè)集合的差集
語法:集合1.difference_update(集合2)
功能:對比集合1和集合2,在集合1內(nèi)刪除和集合2相同的元素
結(jié)果:集合1被修改,集合2不變
set1={1,2,3,4}
set2={2,3,4,5,6}
set1.difference_update(set2)
print(set1) ? ?#結(jié)果:{1}
print(set2) ? ?#結(jié)果:{2, 3, 4, 5, 6}
兩個(gè)集合的合并
語法:集合1.union(集合2)
功能:將集合1和集合2組合成新集合
結(jié)果:得到新集合,集合1和集合2不變
set1={1,2,3,4}
set2={2,3,4,5,6}
set3=set1.union(set2)
print(set3) ? ?#結(jié)果:{1, 2, 3, 4, 5, 6}
print(set1) ? ?#結(jié)果:{1, 2, 3, 4}
print(set2) ? ?#結(jié)果:{2, 3, 4, 5, 6}
統(tǒng)計(jì)集合的元素?cái)?shù)量
語法:len(集合)
集合的遍歷
集合不支持下標(biāo)索引,所以不能用while循環(huán),可以使用for循環(huán)
set1={1,2,3,4}
for element in set1:
? ? print(f"集合set1中的元素有:{element}")

集合常用功能總結(jié):
