Python 7天快速入門完整視頻教程:https://www.bilibili.com/video/BV1o84y1Z7J1
Python 集合set
集合set
集合是多個(gè)元素的集合,但是不能有重復(fù)元素,區(qū)別于列表[],元組()和字符串""。
集合的定義
賦值定義
集合變量名稱 ={ 元素1, 元素2, 元素3, 元素4, ... }
空集合定義
集合變量名稱 = set()
# 定義集合
set1 = {"php", "java", "python"}
print(f"set1={set1},type={type(set1)}")
# 定義空集合
set2 = set()
print(f"set2={set2},type={type(set2)}")
輸出結(jié)果:
set1={'java', 'python', 'php'},type=<class 'set'>
set2=set(),type=<class 'set'>
集合的常用方法
因?yàn)榧鲜菬o(wú)序的,所以集合不支持下標(biāo)索引訪問。
集合和列表一樣,也是可以修改的。
1,add(元素),添加元素到集合,假如元素集合里存在,則忽略
set1 = {"php", "java", "python"}
set1.add("c")
set1.add("python")
print(set1)
2,pop(),隨機(jī)從集合中獲取一個(gè)元素,并且返回。
# pop(),隨機(jī)從集合中獲取一個(gè)元素,并且返回
set2 = {"php", "java", "python"}
ele = set2.pop()
print(set2, ele)
3,clear(),清空集合
set3 = {"php", "java", "python"}
set3.clear()
print(set3)
4,集合1.difference(集合2) 返回差集 (集合1有但是集合2沒有的新集合)
set4 = {"a", "b", "c"}
set5 = {"a", "d", "e"}
print(set4.difference(set5))
print(set4)
print(set5)
5,集合1.difference_update(集合2) ,刪除差集。集合1內(nèi),刪除和集合2相同的元素
set6 = {"a", "b", "c"}
set7 = {"a", "d", "e"}
set6.difference_update(set7)
print(set6)
print(set7)
輸出結(jié)果:
{'b', 'c'}
{'a', 'e', 'd'}
6,集合1.union(集合2),返回合并集合1,集合2后的新集合
set8 = {"a", "b", "c"}
set9 = {"a", "d", "e"}
set10 = set8.union(set9)
print(set10)
print(set8)
print(set9)
輸入結(jié)果:
{'b', 'd', 'c', 'a', 'e'}
{'b', 'c', 'a'}
{'d', 'e', 'a'}
7,len(集合)統(tǒng)計(jì)元素個(gè)數(shù)
set11 = {"a", "b", "c"}
print(len(set11))
集合的遍歷
因?yàn)榧喜恢С窒聵?biāo)索引,所以不能用while循環(huán)
我們用for循環(huán)遍歷
set12 = {"php", "java", "python"}
for ele in set12:
print(ele)
作業(yè):有列表對(duì)象 list1 = ['python', 'java', 'php', 'java']
要求,通過定義一個(gè)新的集合對(duì)象,遍歷列表,通過add添加到集合里,實(shí)現(xiàn)去重。