python 內建的資料結構概述

2021-09-25 16:50:46 字數 2931 閱讀 7592

@time    2019-07-30

@author ruo_xiao

@notice 後續部分這兩天補充。

type

中文名稱

list

列表tuple

元組dict

字典set

集合1、特點

(1)固定列表,一旦初始化其中的元素不可修改。

(2)列表中的元素可以是 python 中的任何物件。

(3)所有元素由乙個小括號「( )」包裹。

2、相關操作

(1)增

由於元組本身是不可改變的,所以沒有函式向元組中增加元素,不過可以直接使用「+」來增加元素。但是,增加完元素之後的元組和增加元素之前的元組不是同乙個,即:位於不同的記憶體空間中。栗子如下:

tup = (1,2,3,"tt",4.2)

new_tup = tup + ("23",)

print("new_tup = ",new_tup)

print("tup = ",tup)

new_tup =  (1, 2, 3, 'tt', 4.2, '23')

tup = (1, 2, 3, 'tt', 4.2)

(2)刪

none。

(3)改

元素本身不能更改的,但是若元素是 list ,是可以更改 list 中的元素,但是不能將元素 list 改為整數、字串什麼的 。

(4)查

類似於陣列的索引。

1、特點

(1)字典中的資料必須得以鍵值對(key - value)的形式出現。

(2)鍵值不可重複,值可以重複。但是 dict 只會記得最後乙個值。

(3)鍵(key)不可改變,但是值(value)可以改變。

(4)所有的鍵值對(key - value)以大括號「」的形式包裹。

2、相關操作

(1)增

a、update(),在字典尾部加入新的 key - value 。

b、直接修改某 key 的 value,若該 key 不存在本 dict 中,則自動建立該 key 。

(2)刪

a、pop(),指定 key,刪除 key - value 。

b、del ,指定 key,刪除 key - value 。

c、clear(),清空 dict 。

(3)改

直接修改已存在的 key 對應的 value 即可。

(4)查

a、類似於 map 的索引。

b、用 get() 查詢指定的 key 是否存在,若不存在則返回 null。

栗子:

if __name__ == '__main__':

dicttest =

print('init:', dicttest)

# 增dicttest.update()

print('added four:', dicttest)

dicttest['five'] = 5

print('added five:', dicttest)

# 刪dicttest.pop('two')

print('delete two:', dicttest)

del dicttest['five']

print('delete five:', dicttest)

# 改dicttest['one'] = 10

print('modify one:', dicttest)

# 查print('show three:', dicttest['three'])

結果:

init: 

added four:

added five:

delete two:

delete five:

modify one:

show three: 3

1、特點

(1)接近於數學中集合的概念。

(2)各個元素不可重複。可通過這個特性來過濾資料結構中重複的元素。

(3)元素不可修改。

typeerror: 'set' object does not support item assignment
(3)所有的元素以大括號「」的形式包裹。

2、相關操作

(1)增

add(),在 set 中新增元素,該元素的位置不確定。

(2)刪

remove(),刪除指定的元素。

(3)改

none 。

(4)查

none,不支援索引。

(5)支援求解集合的交集(&)和並集(|)

栗子:

if __name__ == '__main__':

settest = set([1, 2, 3])

print('init:', settest)

# 增settest.add('38')

print('add str38:', settest)

# 刪settest.remove(2)

print('remove 2:', settest)

# 改pass

# 查pass

settest1 =

settest2 =

# &print('&:', settest1 & settest2)

# |print('|:', settest1 | settest2)

結果:

init: 

add str38:

remove 2:

&: |:

1、list 和 tuple 異同點

(1)2、dict 和 set 異同點

(saw:game over!)

python內建資料結構 Python內建資料結構

分類 數值型int float complex bool 序列物件 list string tuple 鍵值對set集合 dict字典 數值型int python3中的int都是長整型,沒有大小限制,但受限於記憶體區域的大小 float 浮點型,由整數部分和小數部分組成。complex 複數,由實數...

python內建資料結構

數列物件 鍵值對 型別轉換 built in int 取整數部分 整除且向下取整 min 取最小值 max 取最大值 pow x,y 等價於x y math.sqrt 開平方 進製函式,返回值是字串 math.pi math.e 自如常數 count value 時間複雜度 len 不產生新列表,就...

Python內建資料結構

分類 數字處理函式 進製函式,返回字串 型別判斷 列表索引訪問 列表查詢 列表元素修改 列表增加 插入元素 列表尾部追加元素,返回none 即不產生新列表,就地修改 時間複雜度為o 1 追加元素全部輸出為乙個整體 insert index,object 在指定索引位置插入元素object,返回non...