python學習筆記2 6 集合(set)

2021-07-24 13:27:31 字數 1794 閱讀 9677

一般來說,python中常用的資料結構是:列表(list)、字典(dict)、元組(tuple)。但是我們常常還會看到另外一種結構:集合(set)。

個人認為,字典(dict)就是一種特殊的集合(set),它特殊的地方是集合的元素之間有一對一的對應關係。

集合,在定義上來說就是無序不重複的元素集,set裡面可以是多種資料型別(但不能是列表,集合,字典,可以是元組)。

需要注意的是集合是無序的,所以不能用下標來訪問。

## 1. 集合的建立

m = [1,2,9,6,3,4,6,7,8,7,6,4]

a = set(m)

print(a)

列印結果:

## 2 集合的操作(s 代表乙個集合)

- 2.1 s.add( x )

將元素 x 新增到集合s中,若重複則不進行任何操作

m = [1,2,9,6,3,4,6,7,8,7,6,4]

s = set(m)

s.add(7)

print

(s)s.add

(10)

print

(s)列印結果:

m = [1,2,9,6,3,4,6,7,8,7,6,4]

s = set(m)

x =

s.update(x)

print(s)

列印結果:

m = [1,2,9,6,3,4,6,7,8,7,6,4]

s = set(m)

s.discard(5)

s.discard(77)

print(s)

列印結果:

m = [1,2,9,6,3,4,6,7,8,7,6,4]

s = set(m)

s.remove(4)

print(s)

s.remove(5)

print(s)

列印結果:

traceback (most recent call last):

file "d:/home/temp/temp_set.py", line 5, in

s.remove(5)

keyerror:

5

可以看出discard和remove的區別。

m = [1,2,9,6,3,4,6,7,8,7,6,4]

s = set(m)

s.pop()

print(s)

s.pop()

print(s)

clear():清空  

in操作

union( x ) 返回s與集合x的交集,不改變原集合s,x 也可以是列表,元組,字典。

intersection( x ) 返回s與集合x的並集,不改變s, x 也可以是列表,元組,字典。

difference( x )返回在集合s中而不在集合 x 中的元素的集合,不改變集合s, x 也可以是列表,元組,字典。

s.symmetric_difference( x ) 返回s和集合x的對稱差集,即只在其中乙個集合中出現的元素,不改變集合s, x 也可以是列表,元組,字典。

s.issubset( x ) 判斷 集合s 是否是 集合x 子集

s.issuperset( x ) 判斷 集合x 是否是集合s的子集

Python學習筆記(26)集合

學習主題 集合 學習日期 2020 02 08 python 版本 3.7.4 好了,那就按照這個路子開始吧 1.集合的定義 集合,列表,元組的對比。num type num class set 說明這是乙個集合 num 1 2,3 type num class list 說明這是乙個列表 num ...

Python學習筆記 七 集合

集合 set 是乙個無序的不重複元素序列。建立格式 parame 或者set value print basket 這裡演示的是去重功能 orange in basket 快速判斷元素是否在集合內 true crabgrass in basket false 下面展示兩個集合間的運算.a set a...

Python學習筆記 10 集合

集合 set。1 天生可以去重。2 集合是無序的,沒有下標可取值。l 1,1,2,2,3,3 res set l print res 執行結果。集合和字典一樣用大括號。但是字典有冒號,k和v。集合沒有。l list res 去重後在轉回list jihe set 定義乙個空的集合 xingneng ...