零基礎入門學Python 集合

2021-10-09 20:41:42 字數 4646 閱讀 5139

集合

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

可以使用大括號 或者 set() 函式建立集合,注意:建立乙個空集合必須用 set()而不是 ,因為 是用來建立乙個空字典。

建立格式:

>>

> basket =

>>

>

print

(basket)

# 這裡演示的是去重功能

>>

>

'orange'

in basket # 快速判斷元素是否在集合內

true

>>

>

'crabgrass'

in basket

false

>>

>

# 下面展示兩個集合間的運算...

.>>

> a =

set(

'abracadabra'

)>>

> b =

set(

'alacazam'

)>>

> a

>>

> a - b # 集合a中包含而集合b中不包含的元素

>>

> a | b # 集合a或b中包含的所有元素

>>

> a & b # 集合a和b中都包含了的元素

>>

> a ^ b # 不同時包含於a和b的元素

類似列表推導式,同樣集合支援集合推導式(set comprehension):

>>

> a =

>>

> a

>>

>

2.集合的基本操作

1、新增元素

s.add( x )

#語法格式

將元素 x 新增到集合 s 中,如果元素已存在,則不進行任何操作。

>還有乙個方法,也可以新增元素,且引數可以是列表,元組,字典等,語法格式如下:

>>

> thisset =

set(

("google"

,"runoob"

,"taobao"))

>>

> thisset.update(

)>>

>

print

(thisset)

>>

> thisset.update([1

,4],

[5,6

])>>

>

print

(thisset)

>>

>

2、移除元素

語法格式如下:

s.remove( 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'

>>

>

此外還有乙個方法也是移除集合中的元素,且如果元素不存在,不會發生錯誤。格式如下所示:

>>

> thisset =

set(

("google"

,"runoob"

,"taobao"))

>>

> thisset.discard(

"facebook"

)# 不存在不會發生錯誤

>>

>

print

(thisset)

我們也可以設定隨機刪除集合中的乙個元素,語法格式如下:

#多次執行測試結果都不一樣。

#set 集合的 pop 方法會對集合進行無序的排列,然後將這個無序排列集合的左面第乙個元素進行刪除。3、計算集合元素個數

語法格式如下:

len

(s)

>>

> thisset =

set(

("google"

,"runoob"

,"taobao"))

>>

>

len(thisset)

3

4、清空集合

語法格式如下:

s.clear(

)

>>

> thisset =

set(

("google"

,"runoob"

,"taobao"))

>>

> thisset.clear(

)>>

>

print

(thisset)

set(

)

5、判斷元素是否在集合中存在

語法格式如下:

x in s

#判斷元素 x 是否在集合 s 中,存在返回 true,不存在返回 false。

>>

> thisset =

set(

("google"

,"runoob"

,"taobao"))

>>

>

"runoob"

in thisset

true

>>

>

"facebook"

in thisset

false

>>

>

集合內建方法完整列表方法

描述add()

為集合新增元素

clear()

移除集合中的所有元素

copy()

拷貝乙個集合

difference()

返回多個集合的差集

difference_update()

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

discard()

刪除集合中指定的元素

intersection()

返回集合的交集

intersection_update()

返回集合的交集。

isdisjoint()

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

issubset()

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

issuperset()

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

pop()

隨機移除元素

remove()

移除指定元素

symmetric_difference()

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

symmetric_difference_update()

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

union()

返回兩個集合的並集

update()

給集合新增元素

零基礎學Python

零基礎學python 1 1 python是一門指令碼語言 2 python的優勢 1 語法和結構比較簡單,易入門 2 能夠跨平台使用 3 應用範圍廣,設計到作業系統 3d動畫 web 雲計算,企業應用等多方面。3 idle 是乙個python shell,類似於windows的cmd視窗 4 pr...

Python零基礎入門

python零基礎入門 第一周前言 最近在簡單學習python,在之前的學習中也只對c語言有了乙個粗略的了解,可以說在程式設計方面沒有什麼基礎,當然這也是我第一次寫部落格,希望自己越學越好,希望自己加油 在這一周中,還是學習到了不少的東西,也希望把自己學到的東西寫下來,來加強對python的學習,若...

Python入門零基礎

開始認識 不要害怕面對一串密密麻麻的英文本元。如果你將它們獨自分開,你會發現它們就像英文單詞,都有固定的作用。不要被第一眼的陌生感所產生的恐懼給蒙蔽。而要將 看成 變數 可以用來儲存字面量,變數本身沒有任何意思 如 a hello world abc 1,dfg 2,c abc dfg。其中a ab...