Python字典(dict)是Python語言中常用的一種數據類型,它是無序的、可變的、索引的集合。字典中的元素是通過鍵(key)來進行索引的,鍵(key)可以是任意不可變類型,如字符串、數字或元組。字典中的值(value)可以是任意類型的數據。在Python中,字典用花括號{}來創建,其中每個鍵值對由冒號(:)分隔,而鍵值對之間用逗號(,)隔開。
一、基本操作
1、創建字典
# 創建一個空字典
dict1 = {}
# 創建一個初始值為空的字典
dict2 = dict()
# 創建一個有初始值的字典
dict3 = {'apple': 5, 'banana': 3, 'orange': 2}
2、訪問字典元素
# 通過鍵來訪問字典中的元素
print(dict3['apple'])
# 輸出結果為:5
# 使用get()方法訪問字典中的元素
print(dict3.get('apple'))
# 輸出結果為:5
# 訪問一個不存在的鍵
print(dict3.get('watermelon', 'not exist'))
# 輸出結果為:"not exist"
3、修改字典元素
dict3['apple'] = 10
#修改鍵"apple"對應的值為10
print(dict3)
#輸出結果為:{'apple': 10, 'banana': 3, 'orange': 2}
4、添加字典元素
dict3['watermelon'] = 6
#添加新的鍵值對"watermelon": 6
print(dict3)
#輸出結果為:{'apple': 10, 'banana': 3, 'orange': 2, 'watermelon': 6}
5、刪除字典元素
dict3.pop('banana')
#刪除鍵"banana"對應的鍵值對
print(dict3)
#輸出結果為:{'apple': 10, 'orange': 2}
del dict3['orange']
#刪除鍵"orange"對應的鍵值對
print(dict3)
#輸出結果為:{'apple': 10}
二、遍歷字典
1、遍歷鍵(key)
for key in dict3:
print(key)
#輸出結果為:"apple" "orange"
2、遍歷值(value)
for value in dict3.values():
print(value)
#輸出結果為:10 2
3、遍歷鍵值對(items)
for key, value in dict3.items():
print(key, value)
#輸出結果為:"apple" 10 "orange" 2
三、複雜操作
1、字典推導式
字典推導式是Python中一種可以從任何可迭代對象創建字典的簡潔的語法。下面是一個根據列表創建字典的例子。
list1 = ['apple', 'banana', 'orange']
dict4 = {key: len(key) for key in list1}
print(dict4)
#輸出結果為:{'apple': 5, 'banana': 6, 'orange': 6}
2、使用zip()函數
zip()函數可以將多個列表或元組壓縮成一個列表或元組,然後可以使用字典推導式將其轉化為字典。
keys = ['apple', 'banana', 'orange']
values = [5, 3, 2]
dict5 = {key: value for key, value in zip(keys, values)}
print(dict5)
#輸出結果為:{'apple': 5, 'banana': 3, 'orange': 2}
3、使用defaultdict()函數
defaultdict()函數是Python標準庫collections中的一個類,它繼承了內置字典類(dict)並實現了一個用於提供”默認值”的方法,它接收一個可調用的對象(如函數)作為參數,當字典中不存在某個鍵時,defaultdict()函數返回的默認值即為該可調用對象的返回值。
from collections import defaultdict
dict6 = defaultdict(int)
dict6['apple'] += 1
dict6['banana'] += 2
print(dict6)
#輸出結果為:{'apple': 1, 'banana': 2}
四、總結
字典是Python語言中常用的一種數據類型,它可以用於存儲鍵值對,並支持非常豐富的操作方法(如訪問、遍歷、添加、修改和刪除等)。此外,在複雜數據處理中,我們也可以使用字典推導式、zip()函數和defaultdict()函數來完成更為複雜的操作。如此強大的功能,使得Python字典成為必不可少的數據類型之一。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/241920.html