您好,登錄后才能下訂單哦!
如何修改python中字典的鍵和值?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
python中字典是無序的,它們都是通過hash去對應的。一般的如果我們需要修改字典的值,只需要直接覆蓋即可,而修改字典的鍵,則需要使用字典自帶的pop函數,示例如下:
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字典基本操作(包括添加、修改、刪除鍵值對)
由于字典屬于可變序列,所以我們可以任意操作字典中的鍵值對(key-value 對)。Python 中,常見的字典操作有以下幾種:
1.向現有字典中添加新的鍵值對。
2.修改現有字典中的鍵值對。
3.從現有字典中刪除指定的鍵值對。
4.判斷現有字典中是否存在指定的鍵值對。
初學者要牢記,字典中常常包含多個鍵值對,而 key 是字典的關鍵數據,字典的基本操作都是圍繞 key 值實現的。
Python字典添加鍵值對
如果要為 dict 添加鍵值對,只需為不存在的 key 賦值即可。實現此操作的語法格式如下:
dict[key] = value
此格式中,各個參數的含義如表 1 所示。
表 1 Python 字典添加鍵值對語法參數
參數 | 含義 |
---|---|
dict | 表示字典名稱。 |
key | 表示要添加元素的鍵。注意,既然是添加新的元素,那么就要保證此元素的鍵和字典中現有元素的鍵互不相同。 |
value | 表示要添加數據的值,只要是 Python 支持的數據類型就可以。 |
例如,下面代碼演示了在現有字典 a 的基礎上,添加新元素的過程:
a = {'數學':95} print(a) #添加新鍵值對 a['語文'] = 89 print(a) #再次添加新鍵值對 a['英語'] = 90 print(a)
運行結果為:
{'數學': 95}
{'數學': 95, '語文': 89}
{'數學': 95, '語文': 89, '英語': 90}
Python字典修改鍵值對
“修改鍵值對”并不是同時修改某一鍵值對的鍵和值,而只是修改某一鍵值對中的值。
由于在字典中,各元素的鍵必須是唯一的,因此,如果新添加元素的鍵與已存在元素的鍵相同,原來鍵所對應的值就會被新的值替換掉。例如:
a = {'數學': 95, '語文': 89, '英語': 90} a['語文']=100 print(a)
運行結果為:
{'數學': 95, '語文': 100, '英語': 90}
可以看到,字典中沒有再添加一個 {'語文':100} 鍵值對,而是對原有鍵值對 {'語文': 89} 中的值做了修改。
Python字典刪除鍵值對
如果要刪除字典中的鍵值對,還是可以使用 del 語句。例如:
# 使用del語句刪除鍵值對 a = {'數學': 95, '語文': 89, '英語': 90} del a['語文'] del a['數學'] print(a)
運行結果為:
{'英語': 90}
判斷字典中是否存在指定鍵值對
如果要判斷字典中是否存在指定鍵值對,首先應判斷字典中是否有對應的鍵。判斷字典是否包含指定鍵值對的鍵,可以使用 in 或 not in 運算符。
需要指出的是,對于 dict 而言,in 或 not in 運算符都是基于 key 來判斷的。
例如如下代碼:
a = {'數學': 95, '語文': 89, '英語': 90} # 判斷 a 中是否包含名為'數學'的key print('數學' in a) # True # 判斷 a 是否包含名為'物理'的key print('物理' in a) # False
運行結果為:
True
False
通過 in(或 not in)運算符,我們可以很輕易地判斷出現有字典中是否包含某個鍵,如果存在,由于通過鍵可以很輕易的獲取對應的值,因此很容易就能判斷出字典中是否有指定的鍵值對。
關于如何修改python中字典的鍵和值問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。