Python學習筆記6 字典Dict

2022-03-05 13:43:35 字數 4293 閱讀 7656

python內建了字典:dict的支援,dict全稱dictionary,在其他語言中也稱為map,使用鍵-值(key-value)儲存,具有極快的查詢速度。

>>> person = 

>>> person['

name']

'keven

'>>>type(person)

'dict

'>

字典可以原地修改,即它是可變的。

>>> dict1={}

>>>id(dict1)

139736380198256

>>> dict1["

name

"] = "

keven

">>>id(dict1)

139736380198256

>>>dict1

利用元組在建構字典,方法如下:

>>> name = (["

first

","google

"],["

second

","yahoo"])

>>> website =dict(name)

>>>website

或者用這樣的方法:

>>> ad = dict(name="

keven

", age=42)

>>>ad

>>>len(city_code)

4

• d[key],返回字典(d)中的鍵(key)的值

>>> city_code["

suzhou"]

'0512

'

• d[key]=value,將值(value)賦給字典(d)中的鍵(key)

>>> city_code = 

>>> city_code["

shenzhen

"]="

1212

">>>city_code

• del d[key],刪除字典(d)的鍵(key)項(將該鍵值對刪除)

>>> del city_code["

shanghai"]

>>>city_code

• key in d,檢查字典(d)中是否含有鍵為 key 的項

>>> "

shenzhen"in

city_code

true

>>> "sz"

incity_code

false

字典也可以實現格式化字元

>>> city_code = 

>>> "

suzhou is a beautiful city, its area code is %(suzhou)s

" %city_code

'suzhou is a beautiful city, its area code is 0512

字典的常用操作方法:

copy

它與賦值的方式不一樣,它會在記憶體中另闢了乙個空間,但是需要注意的是:對於不是基礎型別的,比如剛才字典的值是列表,python 不會在被複製的那個物件

中重新儲存,而是用引用的方式,指向原來的值。

>>> ad = 

>>> cd =ad.copy()

>>>cd

>>>id(ad)

139736371470416

>>>id(cd)

139736371472376

與賦值的差別,id並沒有改變

>>> ed=ad

>>>ed

>>>id(ed)

139736371470416

clear

清空字典中所有元素的操作

>>> ad = 

>>>ad.clear()

>>>ad

{}

get

dict.get() 就是要得到字典中某個鍵的值

>>> ad = 

>>> ad.get("

name")

'sir

'

setdefault

首先,它要執行d.get(k,d) ,就跟前面一樣了,然後,進一步執行另外乙個操作,如果鍵k不在字典中,就在字典中增加這個鍵值對。當然,如果有就沒有必要執行這一步了。

>>> ad = 

>>> ad.setdefault("

lang

","python")

'python

'>>>ad

>>> ad.setdefault("

name

","python")

'sir

'>>>ad

items

d.items() 能夠得到乙個關於字典的列表,列表中的元素是由字典中的鍵和值組成的元組

>>> d=

>>>d.items()[('

age', '

20'), ('

name

', '

keven

')]

iteritems

得到的是乙個「迭代器」,這個迭代器是關於「d.items()」的,這種迭代器型別的資料不能直接輸出,必須用list() 轉換一下,才能看到裡面的真面目。

>>> d=

>>> d_iter =d.iteritems()

>>>d_iter

>>>type(d_iter)

'dictionary-itemiterator

'>

>>>list(d_iter)[('

gender

', '

femal

'), ('

age', '

20'), ('

name

', '

keven

')]

keys和value

>>> d=

>>>d.keys()['

gender

', '

age', '

name']

>>>d.values()['

femal

', '

20', '

keven

']

pop

根據key刪除

>>> d=

>>> d.pop("

name")

'keven

'>>>d

popitem

d.popitem() 倒是跟list.pop() 有相似之處,不用寫引數(list.pop 是可以不寫引數),但是, d.popitem() 不是刪除最後乙個,dict 沒有順序,也就沒有最後和最先了,它是隨機刪除乙個,並將所刪除的返回。

>>> d=

>>>d.popitem()('

gender

', '

femal')

>>>d

update

把乙個字典的值加入進來

>>> d1 = 

>>> d2 =

>>>d1.update(d2)

>>>d1

還可以用下面的方法更新:

>>> d1 = 

>>> d1.update([("

name

","keven

"),("

age","16"

)])>>>d1

has_key

判斷字典中是否有某乙個鍵值

>>> d=

>>> d.has_key("

name")

true

>>> "

name"in

dtrue

Swift學習筆記 6 字典

1.定義 1.基本定義 key 1 value 1,key 2 value 2,key 3 value 3 var dict name xiaoqin female age 20 for key,value in dict 2.型別強制定義 dictionaryvar dict2 dictionar...

Python學習筆記6 字典與集合

set鍵 值 key value 儲存 你可以想象是數學中的函式f x 乙個x對應乙個f x 例如 a a it1 hello a a traceback most recent call last file line 1,in keyerror a 一是通過in判斷key是否存在 a in a f...

Python基礎(6) 字典

dict,可變得資料型別,儲存對映,無序。對映,即為一對一的kye value鍵值對。1,字典的定義 d 定義空字典 d dict 工廠方法定義字典 d fromkeys value fromkeys函式生成字典,value一致 2,字典的增加 d key value 直接通過key值增加 d.up...