python 程式設計開發 集合(set)介紹

2021-10-21 19:20:21 字數 3247 閱讀 1096

文件宣告:

以下資料均屬於本人在學習過程中產出的學習筆記,如果錯誤或者遺漏之處,請多多指正。並且該文件在後期會隨著學習的深入不斷補充完善。感謝各位的參考檢視。

集合(set)是乙個無序的不重複元素序列(其元素值不允許重複)。

建立集合有兩種方法,一種是使用大括號 「{}」 和 逗號 「,」 來定義;還有一種就是使用 set() 來定義。

注意:

建立乙個空集合必須用 set() 而不是 ,因為 是用來建立乙個空字典的。

格式:

>>

> set1 =

>>

> set1

set([0

,1,2

,3,4

,5,6

,7,8

,9])

>>

> set2 =

set([0

,1,2

,3,4

,5,6

,7,8

,9])

>>

> set2

set([0

,1,2

,3,4

,5,6

,7,8

,9])

>>

> set1 == set2 # 判斷集合是否相等

true

集合(set)內建方法(bif):

方法描述

add()

為集合新增元素

clear()

移除集合中的所有元素

copy()

拷貝乙個集合

difference()

返回多個集合的差集

difference_update()

移除集合中的元素,該元素在指定的集合也存在

discard()

刪除集合中指定的元素

intersection()

返回集合的交集

intersection_update()

返回集合的交集

isdisjoint()

判斷兩個集合是否包含相同的元素,如果沒有返回 true,否則返回 false

issubset()

判斷指定集合是否為該方法引數集合的子集

issuperset()

判斷該方法的引數集合是否為指定集合的子集

pop()

隨機移除元素

remove()

移除指定元素

symmetric_difference()

返回兩個集合中不重複的元素集合

symmetric_difference_update()

移除當前集合中在另外乙個指定集合相同的元素,並將另外乙個指定集合中不同的元素插入到當前集合中

union()

返回兩個集合的並集

update()

給集合新增元素

舉例:

# 定義集合 set3

>>

> set3 =

set(

'12345'

)>>

> set3

set(

['1'

,'3'

,'2'

,'5'

,'4'])

#定義集合 set4

>>

> set4 =

set(

'45678'

)>>

> set4

set(

['8'

,'5'

,'4'

,'7'

,'6'])

#集合 set3 或 set4 中包含的所有元素

>>

> set3 | set4

set(

['1'

,'3'

,'2'

,'5'

,'4'

,'7'

,'6'

,'8'])

# 集合 set3 中包含而集合 set4 中不包含的元素

>>

> set3 - set4

set(

['1'

,'3'

,'2'])

# 集合 set3 和 set4 中都包含了的元素

>>

> set3 & set4

set(

['5'

,'4'])

# 不同時包含於 set3 和 set4 的元素

>>

> set3 ^ set4

set(

['1'

,'3'

,'2'

,'7'

,'6'

,'8'])

# in 和 not in 的用法

>>

>

3in set3

false

>>

> set3

set(

['1'

,'3'

,'2'

,'5'

,'4'])

>>

>

'3'in set3

true

>>

>

'8'not

in set3

true

有時我們希望某個集合中的引數具有穩定性,不允許任何操作對其進行增加或者刪除操作;那麼我們就可以使用 frozenset() 內建函式來實現。

格式 & 舉例:

>>

> set5 =

frozenset()

>>

> set5

frozenset([

'5',2,

3.1515926,4

,1])

>>

> set5.add(6)

# 非法操作, 丟擲異常

traceback (most recent call last)

: file ""

, line 1,in

set5.add(6)

attributeerror:

'frozenset'

object has no attribute 'add'

>>

>

python集合set操作

python的set和其他語言類似,是乙個無序不重複元素集,基本功能包括關係測試和消除重複元素.集合物件還支援union 聯合 intersection 交 difference 差 和sysmmetric difference 對稱差集 等數 算.sets 支援 x in set,len set ...

python學習 集合set

num type num num2 type num2 這兩個大括號的型別明顯不一樣 num的型別是字典而num2的型別則是集合 集合集合具有唯一性 num2 num2 集合不會列印重複的東西 集合不支援索引 num2 2 traceback most recent call last file l...

python基礎 set集合

set集合是乙個無序且不重複的元素集合 1.set的建立 2種方式 se se set 11,22,33 呼叫的set 的 init 方法進行建立 2.set的常用方法 1.add se se.add 44 print se 因為是無序的,所以執行的結果會不一樣,但是 44確實被增加到了原 set集...