- 機(jī)械工程師Python編程:入門(mén)、實(shí)戰(zhàn)與進(jìn)階
- (西)安琪兒·索拉·奧爾巴塞塔
- 634字
- 2024-09-10 16:13:05
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之旅,看看集合的解包。
- HornetQ Messaging Developer’s Guide
- Java異步編程實(shí)戰(zhàn)
- OpenShift開(kāi)發(fā)指南(原書(shū)第2版)
- Java從入門(mén)到精通(第4版)
- Elastic Stack應(yīng)用寶典
- MATLAB定量決策五大類(lèi)問(wèn)題
- 微信公眾平臺(tái)開(kāi)發(fā):從零基礎(chǔ)到ThinkPHP5高性能框架實(shí)踐
- 青少年P(guān)ython編程入門(mén)
- 西門(mén)子S7-200 SMART PLC編程從入門(mén)到實(shí)踐
- Linux C編程:一站式學(xué)習(xí)
- Python 3 數(shù)據(jù)分析與機(jī)器學(xué)習(xí)實(shí)戰(zhàn)
- OpenCV with Python Blueprints
- 深度學(xué)習(xí)程序設(shè)計(jì)實(shí)戰(zhàn)
- H5+移動(dòng)營(yíng)銷(xiāo)設(shè)計(jì)寶典
- Learning ECMAScript 6