python中的集合同數學中的集合概念類似,也是用於儲存不重複元素的,所以集合最好的應用就是去重。
1.1直接建立(使用「{}」):如果在建立集合的過程中輸入了重複的元素python會自動只保留乙個。
>>> set1=
>>> set1
1.2使用set()函式建立:在python中,可以使用set()函式將列表、元組等其他可迭代的物件轉換為列表。
>>> list1=['swan','duck','chicken','python']
>>> tuple1=(1,2,3,4,5,6)
>>> string='python'
>>> set1=set(list1)
>>> set2=set(tuple1)
>>> set3=set(string)
>>> print(set1);print(set2);print(set3)
注意:建立空集合時只能用set()函式實現,而不能直接使用「{}」實現,因為在python中,直接使用「{}」表示建立乙個空字典。
2.1向集合中新增元素:add()函式
>>> list1=
>>> list1.add('swan')
>>> list1
2.2從集合中刪除元素:
2.2.1刪除整個集合:del()
>>> list1=
>>> del list1
>>> list1
traceback (most recent call last):
file "", line 1, in list1
nameerror: name 'list1' is not defined
2.2.2清空集合:clear()
>>> list2=
>>> list2.clear()
>>> list2
set()
2.2.3刪除乙個元素:pop(),pop()會返回刪除的元素
>>> list3=
>>> list3.pop()
'a'>>> list3
2.2.4刪除指定的乙個元素:remove()
>>> list4=
>>> if 'e'in list4: #防止要刪除的元素不在集合中,程式會報錯
list4.remove('e')
>>> list4
3.1交集:「&」,並集:「|」,差集:「-」:
set1=
set2=
print("交集:",set1&set2)
print("並集:",set1|set2)
print("差集:",set1-set2)
#執行結果
交集:
並集:
差集:
資料結構
是否可變
是否重複
是否有序
定義符號
列表可變
可重複有序
[ ]元組
不可變可重複
有序( )
字典可變
可重複無序
集合可變
不可重複
無序
>>> list1=[1,2,3,'swan']
>>> set1=frozenset(list1)
>>> print(set1)
frozenset()
>>> set1.add('tom') #set1是不可變集合
traceback (most recent call last):
file "", line 1, in set1.add('tom')
attributeerror: 'frozenset' object has no attribute 'add'
拓展:
>>> set1=
>>> len(set1)
5
Python練習例項024
問題 有一分數序列 2 1,3 2,5 3,8 5,13 8,21 13.求出這個數列的前20項之和。usr bin env python3 coding utf 8 author ma yi blog date 2020 06 19 name demo024 software pycharm no...
C 學習筆記 024 抽象方法
抽象方法 1 抽象方法 abstract method 也可以稱為純虛函式,是物件導向程式設計技術的乙個核心概念,在設計乙個多層次的類繼承關係時常會用到 2 把某個方法宣告為乙個抽象方法等於告訴編譯器這個方法必不可少,但我現在 在這個基類裡 還不能為它提供乙個實現 3 抽象方法的語法很簡單 在宣告乙...
python學習筆記 集合
使用工廠方法 set 和 frozenset s set cheeseshop s set c e h o p s t frozenset bookshop t frozenset b h k o p s type s type t 用各種集合內建的方法和操作符新增和刪除集合的成員 s.add z ...