詳解如何修改python中字典的鍵和值
我們知道python中字典是無(wú)序的,它們都是通過(guò)hash去對(duì)應(yīng)的。一般的如果我們需要修改字典的值,只需要直接覆蓋即可,而修改字典的鍵,則需要使用字典自帶的pop函數(shù),示例如下:
t = {} t['a'] = 1 t['b'] = 2 # 修改字典的值 print('未修改前:', t) t['b'] = 3 print('修改后: ', t) # 修改字典的鍵 print('-' * 30) print('未修改前:', t) t['c'] = t.pop('a') print('修改后: ', t) """ 輸出如下: 未修改前: {'a': 1, 'b': 2} 修改后: {'a': 1, 'b': 3} ------------------------------ 未修改前: {'a': 1, 'b': 3} 修改后: {'b': 3, 'c': 1} """
Python dict字典基本操作(包括添加、修改、刪除鍵值對(duì))
由于字典屬于可變序列,所以我們可以任意操作字典中的鍵值對(duì)(key-value 對(duì))。Python 中,常見(jiàn)的字典操作有以下幾種:
1.向現(xiàn)有字典中添加新的鍵值對(duì)。
2.修改現(xiàn)有字典中的鍵值對(duì)。
3.從現(xiàn)有字典中刪除指定的鍵值對(duì)。
4.判斷現(xiàn)有字典中是否存在指定的鍵值對(duì)。
初學(xué)者要牢記,字典中常常包含多個(gè)鍵值對(duì),而 key 是字典的關(guān)鍵數(shù)據(jù),字典的基本操作都是圍繞 key 值實(shí)現(xiàn)的。
Python字典添加鍵值對(duì)
如果要為 dict 添加鍵值對(duì),只需為不存在的 key 賦值即可。實(shí)現(xiàn)此操作的語(yǔ)法格式如下:
dict[key] = value
此格式中,各個(gè)參數(shù)的含義如表 1 所示。
表 1 Python 字典添加鍵值對(duì)語(yǔ)法參數(shù)
參數(shù) | 含義 |
---|---|
dict | 表示字典名稱(chēng)。 |
key | 表示要添加元素的鍵。注意,既然是添加新的元素,那么就要保證此元素的鍵和字典中現(xiàn)有元素的鍵互不相同。 |
value | 表示要添加數(shù)據(jù)的值,只要是 Python 支持的數(shù)據(jù)類(lèi)型就可以。 |
例如,下面代碼演示了在現(xiàn)有字典 a 的基礎(chǔ)上,添加新元素的過(guò)程:
a = {'數(shù)學(xué)':95} print(a) #添加新鍵值對(duì) a['語(yǔ)文'] = 89 print(a) #再次添加新鍵值對(duì) a['英語(yǔ)'] = 90 print(a)
運(yùn)行結(jié)果為:
{'數(shù)學(xué)': 95}
{'數(shù)學(xué)': 95, '語(yǔ)文': 89}
{'數(shù)學(xué)': 95, '語(yǔ)文': 89, '英語(yǔ)': 90}
Python字典修改鍵值對(duì)
“修改鍵值對(duì)”并不是同時(shí)修改某一鍵值對(duì)的鍵和值,而只是修改某一鍵值對(duì)中的值。
由于在字典中,各元素的鍵必須是唯一的,因此,如果新添加元素的鍵與已存在元素的鍵相同,原來(lái)鍵所對(duì)應(yīng)的值就會(huì)被新的值替換掉。例如:
a = {'數(shù)學(xué)': 95, '語(yǔ)文': 89, '英語(yǔ)': 90} a['語(yǔ)文']=100 print(a)
運(yùn)行結(jié)果為:
{'數(shù)學(xué)': 95, '語(yǔ)文': 100, '英語(yǔ)': 90}
可以看到,字典中沒(méi)有再添加一個(gè) {'語(yǔ)文':100} 鍵值對(duì),而是對(duì)原有鍵值對(duì) {'語(yǔ)文': 89} 中的值做了修改。
Python字典刪除鍵值對(duì)
如果要?jiǎng)h除字典中的鍵值對(duì),還是可以使用 del 語(yǔ)句。例如:
# 使用del語(yǔ)句刪除鍵值對(duì) a = {'數(shù)學(xué)': 95, '語(yǔ)文': 89, '英語(yǔ)': 90} del a['語(yǔ)文'] del a['數(shù)學(xué)'] print(a)
運(yùn)行結(jié)果為:
{'英語(yǔ)': 90}
判斷字典中是否存在指定鍵值對(duì)
如果要判斷字典中是否存在指定鍵值對(duì),首先應(yīng)判斷字典中是否有對(duì)應(yīng)的鍵。判斷字典是否包含指定鍵值對(duì)的鍵,可以使用 in 或 not in 運(yùn)算符。
需要指出的是,對(duì)于 dict 而言,in 或 not in 運(yùn)算符都是基于 key 來(lái)判斷的。
例如如下代碼:
a = {'數(shù)學(xué)': 95, '語(yǔ)文': 89, '英語(yǔ)': 90} # 判斷 a 中是否包含名為'數(shù)學(xué)'的key print('數(shù)學(xué)' in a) # True # 判斷 a 是否包含名為'物理'的key print('物理' in a) # False
運(yùn)行結(jié)果為:
True
False
通過(guò) in(或 not in)運(yùn)算符,我們可以很輕易地判斷出現(xiàn)有字典中是否包含某個(gè)鍵,如果存在,由于通過(guò)鍵可以很輕易的獲取對(duì)應(yīng)的值,因此很容易就能判斷出字典中是否有指定的鍵值對(duì)。
到此這篇關(guān)于詳解如何修改python中字典的鍵和值的文章就介紹到這了,更多相關(guān)python修改字典鍵和值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python3將變量寫(xiě)入SQL語(yǔ)句的實(shí)現(xiàn)方式
這篇文章主要介紹了python3將變量寫(xiě)入SQL語(yǔ)句的實(shí)現(xiàn)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-03-03python安裝requests庫(kù)的實(shí)例代碼
在本篇文章中小編給大家分享了關(guān)于python怎么安裝requests庫(kù)的知識(shí)點(diǎn)以及代碼內(nèi)容,有興趣的朋友們學(xué)習(xí)下。2019-06-06Python時(shí)間模塊datetime、time、calendar的使用方法
這篇文章主要介紹了Python時(shí)間模塊的使用方法,主要包括三大模塊datetime、time、calendar,感興趣的小伙伴們可以參考一下2016-01-01Python使用redis pool的一種單例實(shí)現(xiàn)方式
這篇文章主要介紹了Python使用redis pool的一種單例實(shí)現(xiàn)方式,結(jié)合實(shí)例形式分析了Python操作redis模塊實(shí)現(xiàn)共享同一個(gè)連接池的相關(guān)技巧,需要的朋友可以參考下2016-04-04人工智能學(xué)習(xí)pyTorch自建數(shù)據(jù)集及可視化結(jié)果實(shí)現(xiàn)過(guò)程
這篇文章主要為大家介紹了人工智能學(xué)習(xí)pyTorch自建數(shù)據(jù)集及可視化結(jié)果的實(shí)現(xiàn)過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11基于Python實(shí)現(xiàn)面向?qū)ο蟀鎸W(xué)生管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了如何利用python實(shí)現(xiàn)學(xué)生管理系統(tǒng)(面向?qū)ο蟀妫闹惺纠a介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-07-07Python 實(shí)現(xiàn)網(wǎng)頁(yè)自動(dòng)截圖的示例講解
今天小編就為大家分享一篇Python 實(shí)現(xiàn)網(wǎng)頁(yè)自動(dòng)截圖的示例講解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05