一般方式
將該集合的所有元素置於乙個大括號內,以逗號分隔。
>>> set1 =
>>> set1
但上面這種方式不能用於建立乙個空集合:
>>> set0 = {}
>>> type(set0)
乙個空的大括號會被認為是乙個空的字典。
用set()建立集合
>>> set(['a',5,'chat',89,2.55])
若建立乙個空集合,set()內不設定引數。
如果集合中的元素型別相同(同為數字或同為字母),可以直接用set()這樣建立:
>>> set('hsdjka')
>>> set('1123549')
從上面的建立我們發現,他並沒有按照我們給出的順序來建立集合,在set('1123549')中,'1'出現了兩次,但是在集合裡只看到乙個'1',這裡可以得出集合的兩大特性:無序性(集合和集合是等價的)和互異性(乙個集合內,不會出現兩個相同的元素)。集合還有乙個性質:確定性(乙個元素是否存在於該集合中,這是可以確定的)。
因為無序性這一特性,所以不能試圖通過下標找到某集合元素。
>>> set1
>>> set1[0]
traceback (most recent call last):
file "", line 1, in set1[0]
typeerror: 'set' object does not support indexing
在介紹集合的內建方法之前,先介紹一種使用frozenset()建立的不可變集合。它的建立方式和set()一致,唯一不同的是這種集合一經建立是不允許改變的。改變集合中元素的方法不適用於frozenset()。
add()
將某元素新增至集合中。
>>> p =
>>> p.add('c')
>>> p
clear()
清空集合中的元素。
copy()
淺拷貝某集合。
>>> q = p.copy()
>>> q
difference()
《差集》
>>> a =
>>> b =
>>> a.difference(b)
等價於a-b,返回a中存在但在b中不存在的元素所組成的集合。
difference_update()
>>> a
>>> b
>>> a.difference_update(b)
>>> a
等價於a-=b在進行差集運算後,將返回集合賦值給原集合。
discard()
將某元素從集合中刪除。
>>> b
>>> b.discard(2)
>>> b
intersection()
《交集》
>>> a =
>>> b =
>>> a.intersection(b)
等價於a & b,返回a與b共有元素的集合。
intersection_update()
等價於a &= b
isdisjoint()
判斷兩個集合是不是不相交,返回bool值。
>>> a =
>>> b =
>>> a.isdisjoint(b)
true
issubset()
《子集》
>>> a =
>>> b =
>>> c =
>>> a.issubset(b)
false
>>> a.issubset(c)
false
>>> d =
>>> a.issubset(d)
true
a.issubset(b),判斷a是否是b的子集,相當於a<=b,返回bool值。
issuperset()《超集》
>>> a
>>> c
>>> a.issuperset(c)
true
a.issuperset(b),判斷a是否是b的超集,相當於a>=b,返回bool值。
pop()
返回並刪除集合中任意一元素。
>>> a
>>> a.pop()
1>>> a
remove()
刪除集合中某元素,若該引數不在此集合類,會引數錯誤。discard()不會報錯。
symmetric_difference()
《對稱差》
>>> a
>>> b
>>> a.symmetric_difference(b)
返回兩個集合中只屬於其中乙個集合,不屬於另乙個結合的元素所組成的集合。(結果相當於a與b的並集減a與b的交集)
等價於a ^ b。
symmetric_difference_update()
等價於a ^= b。
union()
《並集》
>>> a
>>> b
>>> a.union(b)
等價於a | b,返回乙個集合,a與b中任何存在的元素都可以在這個集合中找到(結果相當於a+b的結果,+操作符不可用)。
update()
a.update(b),將b集合中的元素新增到a集合,相當於a |= b。
python基礎知識之集合
鑑於前面已經對列表的一些用法進行過介紹,本篇文章就從元組開始說 首先,元組和列表的形式上是差不多的,都是儲存大量資料的一組集合,但是也是有不同點的 下面舉個列子 元組 test 1,3,xx 列表 test1 1,2,xx 從上面的列子可以看出在定義元組和列表時需要注意的不同,元組用的小括號,而列表...
python 基礎知識之集合操作
一 集合定義 作用 去重,關係運算,定義 知識點回顧 可變型別是不可hash型別 不可變型別是可hash型別 定義集合 集合 可以包含多個元素,用逗號分割,集合的元素遵循三個原則 1 每個元素必須是不可變型別 可hash,可作為字典的key 2 沒有重複的元素 3 無序 注意集合的目的是將不同的值存...
python基礎知識小結之集合
集合 特點 集合物件是一組無序排列的可雜湊的值 集合成員可以做字典的鍵,與列表和元組不同,集合無法通過數字進行索引。此外,集合中的元素不能重複。定義set new empty set object set iterable new set object s 應用 去重 lst1 1,1,2,2,3,...