Python基礎(chǔ)之字典常見操作經(jīng)典實(shí)例詳解
本文實(shí)例講述了Python基礎(chǔ)之字典常見操作。分享給大家供大家參考,具體如下:
Python字典
Python 中的字典是Python中一個(gè)鍵值映射的數(shù)據(jù)結(jié)構(gòu),下面介紹一下如何優(yōu)雅的操作字典.
創(chuàng)建字典
Python有兩種方法可以創(chuàng)建字典,第一種是使用花括號(hào),另一種是使用內(nèi)建 函數(shù)dict
>>> info = {}
>>> info = dict()
初始化字典
Python可以在創(chuàng)建字典的時(shí)候初始化字典
>>> info = {"name" : 'cold'}
>>> info = dict(name = 'cold') # 更優(yōu)雅
很明顯第二種方法更加的優(yōu)雅和減少一些特殊字符的輸入,但是有種情況第二種不能勝任
>>> key = 'name'
>>> info = { key :'cold'} # {'name':'cold'}
>>> info = dict(key = 'cold') # {'key': 'cold'
明顯第二種方法就會(huì)引發(fā)一個(gè)不容易找到的bug
Python字典還有一種初始化方式,就是使用字典的fromkeys方法可以從列表中獲取元素作為鍵并用None或fromkeys方法的第二個(gè)參數(shù)初始化
>>> info = {}.fromkeys(['name', 'blog'])
>>> info
{'blog': None, 'name': None}
>>> info = dict().fromkeys(['name', 'blog'])
>>> info
{'blog': None, 'name': None}
>>> info = dict().fromkeys(['name', 'blog'], 'luckycyong.com')
>>> info
{'blog': 'luckycyong.com', 'name': 'luckycyong.com'}
優(yōu)雅的獲取鍵值
字典可以這樣獲取到鍵的值
>>> info = {'name':'cold', 'blog':'luckycyong.com'}
>>> info['name']
'cold'
但是如果獲取不存在的鍵的值就會(huì)觸發(fā)的一個(gè)KeyError異常,字典有一個(gè)get方法,可以使用字典get方法更加優(yōu)雅的獲取字典
>>> info = dict(name= 'cold', blog='www.luckycyong.com')
>>> info.get('name')
'cold'
>>> info.get('blogname')
None
>>> info.get('blogname', 'luckycyong')
'luckycyong'
我們看到使用get方法獲取不存在的鍵值的時(shí)候不會(huì)觸發(fā)異常,同時(shí)get方法接收兩個(gè)參數(shù),當(dāng)不存在該鍵的時(shí)候就會(huì)返回第二個(gè)參數(shù)的值 我們可以看到使用get更加的優(yōu)雅
更新/添加
Python 字典可以使用鍵作為索引來訪問/更新/添加值
>>> info = dict()
>>> info['name'] = 'cold'
>>> info['blog'] = 'luckycyong.com'
>>> info
{'blog': 'luckycyong.com', 'name': 'cold'}
>>> info
{'blog': 'luckycyong.com', 'name': 'cold night'}
同時(shí)Python字典的update方法也可以更新和添加字典
>>> info = dict(name='cold', blog='luckycyong.com')
>>> info.update({'name':'cold night', 'blogname':'luckycyong'})
>>> info
{'blog': 'luckycyong.com', 'name': 'cold night', 'blogname': 'luckycyong'}
>>> info.update(name='cold', blog='www.luckycyong.com') # 更優(yōu)雅
>>> info
{'blog': 'www.luckycyong.com', 'name': 'cold', 'blogname': 'luckycyong'}
Python字典的update方法可以使用一個(gè)字典來更新字典,也可以使用參數(shù)傳遞類似dict函數(shù)一樣的方式更新一個(gè)字典,上面代碼中哦功能的第二個(gè)更加優(yōu)雅,但是同樣和dict函數(shù)類似,鍵是變量時(shí)也只取字面值
字典刪除
可以調(diào)用Python內(nèi)置關(guān)鍵字del來刪除一個(gè)鍵值
>>> info = dict(name='cold', blog='luckycyong.com')
>>> info
{'blog': 'luckycyong.com', 'name': 'cold'}
>>> del info['name']
>>> info
{'blog': 'luckycyong.com'}
同時(shí)也可以使用字典的pop方法來取出一個(gè)鍵值,并刪除
>>> info = dict(name='cold', blog='luckycyong.com')
>>> info.pop('name')
'cold'
>>> info
{'blog': 'luckycyong.com'}
其他操作
獲取所有key
>>> info = dict(name='cold', blog='luckycyong.com') >>> info.keys() ['blog', 'name']
獲取key,value并循環(huán)
>>> info = dict(name='cold', blog='luckycyong.com') >>> for key, value in info.items(): ... print key, ':', value ... blog : luckycyong.com name : cold
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《Python字典操作技巧匯總》、《Python列表(list)操作技巧總結(jié)》、《Python函數(shù)使用技巧總結(jié)》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python字符串操作技巧匯總》及《Python入門與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python字符串對(duì)象實(shí)現(xiàn)原理詳解
這篇文章主要介紹了Python字符串對(duì)象實(shí)現(xiàn)原理詳解,在Python世界中將對(duì)象分為兩種:一種是定長對(duì)象,比如整數(shù),整數(shù)對(duì)象定義的時(shí)候就能確定它所占用的內(nèi)存空間大小,另一種是變長對(duì)象,在對(duì)象定義時(shí)并不知道是多少,需要的朋友可以參考下2019-07-07
Python實(shí)現(xiàn)OCR識(shí)別之pytesseract案例詳解
這篇文章主要介紹了Python實(shí)現(xiàn)OCR識(shí)別之pytesseract案例詳解,本篇文章通過簡要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下2021-07-07
Python獲取當(dāng)前時(shí)間日期的實(shí)現(xiàn)示例
本文主要介紹了Python獲取當(dāng)前時(shí)間日期,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-03-03
Python高級(jí)架構(gòu)模式知識(shí)點(diǎn)總結(jié)
在本篇文章里小編給大家整理了一篇關(guān)于Python高級(jí)架構(gòu)模式知識(shí)點(diǎn)總結(jié)內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。2021-08-08
Python趣味挑戰(zhàn)之turtle庫繪畫飄落的銀杏樹
銀杏還是和恐龍同時(shí)代的植物,被稱為活化石,適應(yīng)能力強(qiáng),生長期漫長,壽命可達(dá)千年.因此,銀杏是長壽的代表和象征,接下來用Python的turtle庫來繪畫銀杏樹唯美的一幕,需要的朋友可以參考下2021-05-05
python字典通過值反查鍵的實(shí)現(xiàn)(簡潔寫法)
這篇文章主要介紹了python字典通過值反查鍵的實(shí)現(xiàn)(簡潔寫法),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-09-09
wxPython繪圖模塊wxPyPlot實(shí)現(xiàn)數(shù)據(jù)可視化
這篇文章主要為大家詳細(xì)介紹了wxPython繪圖模塊wxPyPlot實(shí)現(xiàn)數(shù)據(jù)可視化,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-11-11
python的數(shù)學(xué)算法函數(shù)及公式用法
在本篇內(nèi)容里小編給大家分享了一篇關(guān)于python的數(shù)學(xué)算法函數(shù)及公式用法,有興趣的朋友們可以參考下。2020-11-11

