官术网_书友最值得收藏!

1.5.4 字典

圖1-5 使用負(fù)索引對(duì)列表進(jìn)行切片

字典(dictionary)是鍵-值對(duì)的集合。字典中的值被映射到對(duì)應(yīng)的鍵上,我們使用鍵從字典中檢索元素。在字典中查找值非??焖?。

當(dāng)我們希望存儲(chǔ)由某些鍵引用的元素時(shí),字典很有用。例如,如果我們想存儲(chǔ)兄弟姐妹的信息,并且希望通過(guò)名稱(chēng)檢索,那么就可以使用字典。讓我們來(lái)看一下實(shí)際代碼。

Python中創(chuàng)建字典,可以使用dict函數(shù):

或者使用字面量語(yǔ)法:

dict函數(shù)需要一個(gè)元組的列表。這些元組應(yīng)該包含兩個(gè)值:第一個(gè)值被用作鍵,第二個(gè)值被用作值。創(chuàng)建字典的字面量語(yǔ)法要簡(jiǎn)潔很多,而且這兩種情況生成的字典是相同的。

與列表一樣,我們使用方括號(hào)訪(fǎng)問(wèn)字典中的值。不過(guò),方括號(hào)之間是鍵,而不是索引:

你可以使用任何不可變對(duì)象作為字典中的鍵。請(qǐng)記住。元組不可變,列表可變。數(shù)字、字符串和布爾值也不可變,因此可以用作字典鍵。

讓我們創(chuàng)建一個(gè)字典,以元組為鍵:

在這個(gè)例子中,年齡映射的鍵是由名和姓組成的元組。如果想知道Jen的年齡,我們可以用鍵進(jìn)行檢索:

當(dāng)我們檢索一個(gè)不在字典里的鍵時(shí),會(huì)發(fā)生什么?

我們收到一個(gè)錯(cuò)誤提示。在獲取值之前,我們可以先使用in操作符,檢查鍵是否在字典中:

如下代碼可以得到字典中所有鍵的類(lèi)集合視圖:

對(duì)值也可以做同樣的操作:

使用in操作符可以檢查某個(gè)值是否出現(xiàn)在字典的鍵和值中:

字典可以通過(guò)幾種方式進(jìn)行迭代。假設(shè)我們有如下的ages字典:

我們可以使用for循環(huán)來(lái)遍歷字典中的鍵:

對(duì)值可以做同樣的操作:

也可以對(duì)鍵-值對(duì)做同樣的操作:

以上是我們目前需要了解的Python元素集的知識(shí)。讓我們繼續(xù)Python之旅,看看集合的解包。

主站蜘蛛池模板: 留坝县| 偏关县| 祁阳县| 呼伦贝尔市| 门头沟区| 汉寿县| 盖州市| 延川县| 潜山县| 长宁县| 海林市| 巴里| 鄂托克旗| 樟树市| 庆元县| 兴义市| 隆尧县| 五河县| 舟山市| 当涂县| 福州市| 延津县| 潜江市| 平邑县| 确山县| 郓城县| 兰溪市| 台前县| 长子县| 武乡县| 盖州市| 西乡县| 罗定市| 大冶市| 北京市| 新乡市| 奈曼旗| 仁化县| 漳州市| 成都市| 武强县|