小編給大家分享一下python運(yùn)用字典的正確方式,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
為連山等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及連山網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、成都外貿(mào)網(wǎng)站建設(shè)、連山網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
眾所周知字典(dict)對象是 Python 最常用的數(shù)據(jù)結(jié)構(gòu),社區(qū)曾有人開玩笑地說:"Python企圖用字典裝載整個世界",字典在Python中的重要性不言而喻,這里整理了幾個關(guān)于高效使用字典的清單,希望Python開發(fā)者可以在日常應(yīng)用開發(fā)中合理利用,讓代碼更加 Pythonic。
1、用in關(guān)鍵字檢查key是否存在
Python之禪中有一條開發(fā)哲學(xué)是:
There should be one-- and preferably only one --obvious way to do it.
盡量找一種,最好是唯一種顯而易見的解決方案。Python2 中判斷某個 key 是否存在字典中可使用 has_key 方法,另外一種方式是使用 in 關(guān)鍵字。但是強(qiáng)烈推薦使用后者,因?yàn)?in 的處理速度更快,另外一個原因是 has_key 這個方法在 Python3 被移除了,要想同時(shí)兼容py2和py3兩個版本的代碼,用 in 是最好的選擇。
if 'name' in d: pass
2、用 get 獲取字典中的值
關(guān)于獲取字典中的值,一種簡單的方式就是用d[x]訪問該元素,但是這種情況在 key 不存在的情況下會報(bào) KeyError 錯誤,當(dāng)然你可以先用 in 操作檢查 key 是否在字典中再獲取,不過這種方式不符合 Python 之禪中說的:
Simple is better than complex.Flat is better than nested.
好的代碼應(yīng)該是簡單易懂的,扁平的代碼結(jié)構(gòu)更加可讀。我們可以使用 get 方法來代替 if ... else
print(d.get("name", "default"))
3、用setdefault為字典中不存在的key設(shè)置缺省值
setdefault 的作用是:
如果 key 存在于字典中,那么直接返回對應(yīng)的值,等效于 get 方法
如果 key 不存在字典中,則會用 setdefault 中的第二個參數(shù)作為該 key 的值,再返回該值。
看完了這篇文章,相信你對python運(yùn)用字典的正確方式有了一定的了解,想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
新聞名稱:python運(yùn)用字典的正確方式
文章源于:http://redsoil1982.com.cn/article28/jhedjp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、網(wǎng)站改版、移動網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)公司、建站公司、網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)