Python入門教程(十五)Python的字典
字典(Dictionary)
字典是一個無序、可變和有索引的集合。在 Python 中,字典用花括號編寫,擁有鍵和值。
實例
創(chuàng)建并打印字典:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
print(thisdict)
運行實例

訪問項目
您可以通過在方括號內(nèi)引用其鍵名來訪問字典的項目:
實例
獲取 “model” 鍵的值:
x = thisdict["model"]
運行實例

還有一個名為 get() 的方法會給你相同的結(jié)果:
實例
獲取 “model” 鍵的值:
x = thisdict.get("model")運行實例

更改值
您可以通過引用其鍵名來更改特定項的值:
實例
把 “year” 改為 2019:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
thisdict["year"] = 2019
運行實例

遍歷字典
您可以使用 for 循環(huán)遍歷字典。
循環(huán)遍歷字典時,返回值是字典的鍵,但也有返回值的方法。
實例
逐個打印字典中的所有鍵名:
for x in thisdict: print(x)
運行實例

實例
逐個打印字典中的所有值:
for x in thisdict: print(thisdict[x])
運行實例

實例
還可以使用 values() 函數(shù)返回字典的值:
for x in thisdict.values(): print(x)
運行實例

實例
通過使用 items() 函數(shù)遍歷鍵和值:
for x, y in thisdict.items(): print(x, y)
運行實例

檢查鍵是否存在
要確定字典中是否存在指定的鍵,請使用 in 關(guān)鍵字:
實例
檢查字典中是否存在 “model”:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
if "model" in thisdict:
print("Yes, 'model' is one of the keys in the thisdict dictionary")
運行實例

字典長度
要確定字典有多少項目(鍵值對),請使用 len() 方法。
實例
打印字典中的項目數(shù):
print(len(thisdict))
運行實例

添加項目
通過使用新的索引鍵并為其賦值,可以將項目添加到字典中:
實例
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
thisdict["color"] = "red"
print(thisdict)
運行實例

刪除項目
有幾種方法可以從字典中刪除項目:
實例
pop() 方法刪除具有指定鍵名的項:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
thisdict.pop("model")
print(thisdict)
運行實例

實例
popitem() 方法刪除最后插入的項目(在 3.7 之前的版本中,刪除隨機項目):
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
thisdict.popitem()
print(thisdict)
運行實例

實例
del 關(guān)鍵字刪除具有指定鍵名的項目:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
del thisdict["model"]
print(thisdict)
運行實例

實例
del 關(guān)鍵字也可以完全刪除字典:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
del thisdict
print(thisdict) #this 會導(dǎo)致錯誤,因為 "thisdict" 不再存在。
運行實例

實例
clear() 關(guān)鍵字清空字典:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
thisdict.clear()
print(thisdict)
運行實例

復(fù)制字典
您不能通過鍵入 dict2 = dict1 來復(fù)制字典,因為:dict2 只是對 dict1 的引用,而 dict1 中的更改也將自動在 dict2 中進行。
有一些方法可以進行復(fù)制,一種方法是使用內(nèi)建的字典方法 copy()。
實例
使用 copy() 方法來復(fù)制字典:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
mydict = thisdict.copy()
print(mydict)
運行實例

制作副本的另一種方法是使用內(nèi)建方法 dict()。
實例
使用 dict() 方法創(chuàng)建字典的副本:
thisdict = {
"brand": "Porsche",
"model": "911",
"year": 1963
}
mydict = dict(thisdict)
print(mydict)
運行實例

嵌套字典
詞典也可以包含許多詞典,這被稱為嵌套詞典。
實例
創(chuàng)建包含三個字典的字典:
myfamily = {
"child1" : {
"name" : "Phoebe Adele",
"year" : 2002
},
"child2" : {
"name" : "Jennifer Katharine",
"year" : 1996
},
"child3" : {
"name" : "Rory John",
"year" : 1999
}
}
運行實例
{'child1': {'name': 'Phoebe Adele', 'year': 2002}, 'child2': {'name': 'Jennifer Katharine', 'year': 1996}, 'child3': {'name': 'Rory John', 'year': 1999}}
或者,如果您想嵌套三個已經(jīng)作為字典存在的字典:
實例
創(chuàng)建三個字典,然后創(chuàng)建一個包含其他三個字典的字典:
child1 = {
"name" : "Phoebe Adele",
"year" : 2002
}
child2 = {
"name" : "Jennifer Katharine",
"year" : 1996
}
child3 = {
"name" : "Rory John",
"year" : 1999
}
myfamily = {
"child1" : child1,
"child2" : child2,
"child3" : child3
}
運行實例
{'child1': {'name': 'Phoebe Adele', 'year': 2002}, 'child2': {'name': 'Jennifer Katharine', 'year': 1996}, 'child3': {'name': 'Rory John', 'year': 1999}}
dict() 構(gòu)造函數(shù)
也可以使用 dict() 構(gòu)造函數(shù)創(chuàng)建新的字典:
實例
thisdict = dict(brand="Porsche", model="911", year=1963) # 請注意,關(guān)鍵字不是字符串字面量 # 請注意,使用了等號而不是冒號來賦值 print(thisdict)
運行實例

字典方法
Python 提供一組可以在字典上使用的內(nèi)建方法。

到此這篇關(guān)于Python入門教程(十五)Python的字典的文章就介紹到這了,更多相關(guān)Python 字典內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python subprocess 殺掉全部派生的子進程方法
下面小編就為大家?guī)硪黄猵ython subprocess 殺掉全部派生的子進程方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-01-01
Python selenium 實例之通過 selenium 查詢禪道是否有任務(wù)或者BUG
這篇文章主要介紹了Python selenium 實例之通過 selenium 查詢禪道是否有任務(wù)或者BUG的相關(guān)資料,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下2021-09-09
pytorch中tensor.expand()和tensor.expand_as()函數(shù)詳解
今天小編就為大家分享一篇pytorch中tensor.expand()和tensor.expand_as()函數(shù)詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12
Python WEB應(yīng)用部署的實現(xiàn)方法
這篇文章主要介紹了Python WEB應(yīng)用部署的實現(xiàn)方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-01-01

