python學習 字典

2021-07-08 19:45:04 字數 1898 閱讀 1394

字典的形式

形式:dict =  

key:鍵(可以理解為代號)

value:值(代號所指代的內容)

字典的特點:

1、字典是**無序**的,它不能通過偏移來訪問,只能**通過鍵來訪問**。

2、可以巢狀

3、可變資料型別,可以在原地修改裡面的內容。

4、組成字典的**鍵**必須是**不可變**的資料型別,比如,數字,字串,元組等;列表等可變物件不能作為鍵。

**特別注意:如果是元組作為key時,元組裡面的內容也必須是不可變的資料型別!**

字典的使用方法:

1、建立字典。

(1) {}

info =

(2) dict()

info = dict(name='lilei',age=20)

(3) dict(iterable)

eg:a = (('a','aa'),('b','bb'))

dict(a) --- >

還有另外一種表達方式:

a = (('a','aa'),('b','bb'))

b = {}

for k, v in

a: d[k] = v

2、新增內容 

a['xx'] = 'xx'

eg:a['c'] = 'cc'

print a ---->

3、修改內容

(1)a['xx'] = 'xx' ,

(2)update()

引數是乙個字典的型別,他會覆蓋相同鍵的值

a.update()

4、刪除內容

(1)del:

del a['a'] (del(a['a']))刪除某個元素

del a 刪除整個字典

(2)clear a.clear() **清空**整個字典(字典仍然存在)

(3)pop a.pop('a') 彈出k為'a'的的值,並且在字典中刪除這個元素。

比較list和dict中pop()用法的區別:

a: list中pop()內的引數可以省略,省略後預設從最後乙個元素開始,而dict中的引數不可以省略。

b: list 中引數是下標,dict中的引數是key值

c: 當沒有要pop的值時,listdict都會丟擲異常。但是dict,可以會返回乙個自定義的內容。dict.pop('d',"沒有d值")

5、in 和 has_key() 成員關係操作

(1)in \ not in

(2)has_key() dict.has_key(key)

6、幾個常用的方法:

keys(): 返回的是列表,裡面包含了字典的所有鍵

values():返回的是列表,裡面包含了字典的所有值

items():生成乙個字典的容器list:[()]

get():從字典中獲得乙個值

dict.get(key)

如果字典中沒有這個值,返回乙個空字串(實際上返回乙個nonetype型別),也可以在後面加上乙個引數,就有返回值了。

dict.get(key,str)

eg:a =

for x,y in a.items():

print x,y ----> 2 two

1 one

key_list = a.keys()

key_list.sort()

for x in key_list:

print x,a[x] -----1 one

2 two

python學習 字典

這幾天都比較忙,在搞android開發,接著就天天碼 自然就是很晚。抽點時間現在來看一下python方面的基礎,字典。字典 字典是一種可變容器模型,可以為任意型別。字典中由鍵和值組成,中間冒號隔開。使用冒號隔開,這樣就可以一一的建立好乙個物件,物件之間使用逗號隔開。使用arcmap來建立乙個物件。建...

Python學習 字典

python學習 字典 1.字典是一系列鍵 值對。每個鍵都與乙個值相關聯,可以通過鍵來訪問相應的值。與鍵相關聯的值可以是數字 字串 列表 字典或者任何的python物件。2.python不關心字典中鍵 值對的儲存順序,只關心鍵和值之間的關聯關係。也就是不能像列表中一樣通過角標來訪問鍵 值對。3.使用...

Python學習 字典

有乙個列表和乙個字典 dragonloot gold coin dagger gold coin gold coin ruby inv 寫乙個名為 addtoinventory inventory,addeditems 的函式,其中 inventory 引數是乙個字典,表示玩家的物品清單 像前面專案...