集合(set)是乙個無序的不重複元素序列。
可以使用大括號或者set()函式建立集合,注意:建立乙個空集合必須用set()而不是,因為是用來建立乙個空字典。
建立乙個空集合 和 空字典
empty_set =
set(
)empty_dict =
print
(empty_set)
print
(empty_dict)
print
(type
(empty_set)
)print
(type
(empty_dict)
)'''
set()
{}'''
集合的運算a =
set(
'abracadabra'
)b =
set(
'alacazam'
)print
(a)print
(b)print
(a - b)
#差集print
(a | b)
#並集print
(a & b)
#交集print
(a ^ b)
#兩集合各自獨有的==並-交
''''''
集合的基本操作
set.add(x)將元素 x 新增到集合 s 中,如果元素已存在,則不進行任何操作。
thisset =
set(
("google"
,"runoob"
,"taobao"))
thisset.add(
"facebook"
)print
(thisset)
''''''
s.update( x )將元素 x 新增到集合 s 中,如果元素已存在,則不進行任何操作。x 可以有多個,用逗號分開。
>>
>thisset =
set(
("google"
,"runoob"
,"taobao"))
>>
> thisset.update(
)>>
>
print
(thisset)
>>
> thisset.update([1
,4],
[5,6
])>>
>
print
(thisset)
s.remove(x)將元素 x 從集合 s 中移除,如果元素不存在,則會發生錯誤。
s.discard(x)將元素 x 從集合 s 中移除,如果元素不存在,不會發生錯誤。
>>
>thisset =
set(
("google"
,"runoob"
,"taobao"))
>>
> thisset.remove(
"taobao"
)>>
>
print
(thisset)
>>
> thisset.remove(
"facebook"
)# 不存在會發生錯誤
traceback (most recent call last)
: file ""
, line 1,in
keyerror:
'facebook'
s.discard(x)移除集合中的元素,且如果元素不存在,不會發生錯誤。
>>
>thisset =
set(
("google"
,"runoob"
,"taobao"))
>>
> thisset.discard(
"facebook"
)# 不存在不會發生錯誤
>>
>
print
(thisset)
s.pop()隨機刪除集合中的乙個元素,因為集合是無序的
thisset =
set(
("google"
,"runoob"
,"taobao"
,"facebook"))
x = thisset.pop(
)print
(x)'''
runoob
'''
len(s)計算集合s元素的個數
>>
>thisset =
set(
("google"
,"runoob"
,"taobao"))
>>
>
len(thisset)
3
s.clear()清空乙個集合
>>
> thisset =
set(
("google"
,"runoob"
,"taobao"
,"facebook"))
>>
> thisset
>>
> thisset.clear(
)>>
> thisset
set(
)
x in s判斷x是否在集合s中
>>
> thisset =
set(
("google"
,"runoob"
,"taobao"
,"facebook"))
>>
>
"google"
in thisset
true
>>
>
"hello"
in thisset
false
intersetcion()求交集(不改變原有集合)
difference()求差集(不改變原有集合)
unoin()求並集(不改變原有集合)
symmetric_difference()對稱差集
舉**intersetcion()**例子:
>>
> s =
set(
"hacker"
)>>
>
print
(s.intersection(
"rank"))
>>
>
print s.intersection(
['r'
,'a'
,'n'
,'k'])
set(
['a'
,'k'])
>>
> s &
set(
"rank"
)set([
'a',
'k']
)
issubset()是否為子集
>>
> thisset =
set(
("google"
,"runoob"
,"taobao"
,"facebook"))
>>
> anotherset =
set(
("google"
,"runoob"))
>>
> thisset.issubset(anotherset)
false
>>
> anotherset.issubset(thisset)
true
python 學習之路(集合)
集合本身無序,並且資料不重複,主要作用 1.去重 列表轉換成集合就能去重 2.做兩組資料的 交集 差集 並集 關係測試 先宣告乙個列表 list1 1,2,3,4,4,5,3,7,2 將列表變成集合 list1 set list1 列印結果 可以看出已經去重 list1 1,2,3,4,4,5,3,...
python之路 集合
set集合是無序的,不能通過索引和切片來做一些操作 建立集合 n set hello print n 集合新增 刪除 1 新增 n set hello n.add onion print n 2 刪除 隨機刪除 n.pop 指定刪除 n.remove h 刪除元素不存在會報錯 n.discard m...
python學習 集合常見操作
remove 刪除給定元素,元素不在集合中時會報錯 discard 刪除給定元素,元素不在集合中時什麼也不做 pop 隨機刪除乙個元素,並返回,集合為空會報錯 clear 清空集合。add 在集合中新增乙個元素,元素存在時,不變 update 相當於並集 集合不能修改單個元素 集合不能通過索引訪問,...