詳解Python中dict與set的使用
Python中類似于PHP的數(shù)組的結(jié)構(gòu)有l(wèi)ist,tuple,dict和set, 其中l(wèi)ist, tuple和set的類似于PHP的索引數(shù)組, 而dict就類似于PHP的關(guān)聯(lián)數(shù)組,
dict:
dict的結(jié)構(gòu)表示了一種映射關(guān)系, 與PHP的關(guān)聯(lián)數(shù)組類似, 比如要定義個(gè)用戶信息如下:
name: Yi_Zhi_Yu sex: Man country: China
這個(gè)使用list,tuple和set都是不能直接表示出來(lái)的, 因?yàn)闆](méi)有能夠使用字符串做鍵值的結(jié)構(gòu),而dict就可以,如下
m = {"name":"Yi_Zhi_Yu", "sex":"Man", "country": "China"} //注意這里是`{}`, 不是`[]` print m["name"] //Yi_Zhi_Yu print m["sex"] //Man print m["country"] //China
dict 的數(shù)值對(duì)象有個(gè)get方法, 讓我們可以在獲取指定key的時(shí)候可以指定默認(rèn)值
- dict 在查找(hash key)和插入(沒(méi)有順序要求)速度方面比較有優(yōu)勢(shì),但內(nèi)存消耗較大
- 而list則正好相反
Set:
Set 與 List 和 Tuple 類似, 但Set中的值是不會(huì)重復(fù)的
比如要定義學(xué)的課程,使用set定義:
定義如下:
classes = set([u"語(yǔ)文", u"數(shù)學(xué)", u"英文"]) //set 關(guān)鍵詞, 括號(hào)中是個(gè)list print classes //set([u'\u8bed\u6587', u'\u6570\u5b66', u'\u82f1\u6587'])
添加的方法是add
classes.add(u"數(shù)學(xué)")
//不會(huì)有重復(fù) print classes //set([u'\u8bed\u6587', u'\u6570\u5b66', u'\u82f1\u6587']) classes.add(u"歷史") print classes //set([u'\u8bed\u6587', u'\u6570\u5b66', u'\u5386\u53f2', u'\u82f1\u6587'])
刪除的方法是remove:
classes.remove(u"歷史") print classes // set([u'\u8bed\u6587', u'\u6570\u5b66', u'\u82f1\u6587'])
相關(guān)文章
flask框架配置mysql數(shù)據(jù)庫(kù)操作詳解
這篇文章主要介紹了flask框架配置mysql數(shù)據(jù)庫(kù)操作,結(jié)合實(shí)例形式詳細(xì)分析了flask框架配置mysql數(shù)據(jù)庫(kù)及連接訪問(wèn)等相關(guān)操作技巧,需要的朋友可以參考下2019-11-11python利用 pytesseract快速識(shí)別提取圖片中的文字((圖片識(shí)別)
本文介紹了tesseract的python調(diào)用,也就是pytesseract庫(kù),其中還有一些其他的內(nèi)容并沒(méi)有涉及,僅涉及到了圖片提取文字,如果你對(duì)其感興趣,可以深入探索一下,也希望能和我探討一下2022-11-11Python學(xué)習(xí)筆記之lambda表達(dá)式用法詳解
這篇文章主要介紹了Python學(xué)習(xí)筆記之lambda表達(dá)式用法,結(jié)合實(shí)例形式詳細(xì)分析了lambda表達(dá)式的概念、功能、原理、組成及相關(guān)使用技巧,需要的朋友可以參考下2019-08-08python區(qū)塊鏈地址的簡(jiǎn)版實(shí)現(xiàn)
這篇文章主要為大家介紹了python區(qū)塊鏈地址的簡(jiǎn)版實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05Python+OpenCV實(shí)現(xiàn)表面缺陷檢測(cè)
對(duì)于現(xiàn)在很多工業(yè)檢測(cè),特別是對(duì)一些精密的器件進(jìn)行篩選,往往都是像素級(jí)別的,十分的精確。本文將利用OpenCV+Python實(shí)現(xiàn)表面缺陷檢測(cè),感興趣的可以了解一下2022-08-08Python控制臺(tái)輸出俄羅斯方塊的方法實(shí)例
這篇文章主要給大家介紹了關(guān)于Python控制臺(tái)輸出俄羅斯方塊的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-04-04PYQT5實(shí)現(xiàn)控制臺(tái)顯示功能的方法
今天小編大家分享一篇PYQT5實(shí)現(xiàn)控制臺(tái)顯示功能的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-06-06python實(shí)現(xiàn)本地批量ping多個(gè)IP的方法示例
這篇文章主要介紹了python實(shí)現(xiàn)本地批量ping多個(gè)IP的方法示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08