1. 程式人生 > >dict字典

dict字典

叠代 pop log 數據 不同 長度 由於 key body

--------------以下部分摘自While老師的教學資料

字典:

字典一個元素呈鍵值對的形式,以逗號分割,以大括號包圍的無序的,可以修改的序列。

字典python基礎數據類型當中唯一一個映射關系的數據類型通常對應JSON

定義:

Zip函數:將幾個序列對應索引位上的元素分到一個元組當中,形成一個列表,子元組的個數取決於最短序列的長度

由於字典無序,所以我們定義字典和字典生成之後的元素的順序是不同的

技術分享圖片

dict

技術分享圖片

{}

技術分享圖片

Fromkeys 以後面的序列的元素為鍵,默認值為None的字典

技術分享圖片

字典的特點:

因為字典是無序的,所以字典沒有索引值,

因為字典沒有索引值,所以字典以鍵取值(字典的鍵相當於列表的索引

)

因為字典以鍵取值,所以字典的鍵唯一且不可修改,

因為字典的鍵不可修改,所以列表和字典不可以給字典做鍵。

技術分享圖片

技術分享圖片

字典的方法

字典的取值

keys

獲取字典所有的鍵

values

獲取字典所有的值

get

以鍵取值,如果指定鍵不存在,默認返回None,可以指定返回內容

update

更新指定鍵的內容,如果鍵不存在,創建

setdefault

設置默認,如果鍵存在,返回值,如果鍵不存在,創造鍵,值默認為None,值也可以自定義

items

返回字典鍵值呈元組形式的格式

字典的刪除

pop

彈出,返回並刪除指定鍵對應的值

popitem

隨機彈出一個鍵值元組,這裏隨機的原因是因為字典無序

clear

清空字典

字典的判斷

has_key

判斷指定的鍵是否在字典當中,即將被廢除,之後我們用in

視圖模式

viewitems

視圖模式的主要特征是與字典保持同步,在我們python基礎部分不做深入研究

viewkeys

viewvalues

叠代模式

Iteritems

在python2.4版本之後,為了提高python運行效率python提出了叠代器、生成器、裝飾器的定義,而字典的叠代模式正式去用了叠代器原理,

當我們直接調用的時候,我們只能得到一個內存地址,當我們具體想要取值的時候,需要借助next方法

Iterkeys

itervalues

copy 淺拷貝,進行淺拷貝

在python當中,淺拷貝指的是拷貝對象和被拷貝對象的嵌套部分指向統一的內存。

str

list

tuple

dict

是否有序

是否可修改

方法多少

很多

一般

很少

較多 映射關系

dict字典