一、Dict的定義和用法
Python中的字典是一種映射類型,它是一個無序的鍵(key):值(value)對集合。字典用花括號 {} 定義,每個鍵:值對之間用逗號隔開。
dict1 = {'name': 'Tom', 'age': 18, 'city': 'New York'}
可以通過鍵來訪問字典中的值
print(dict1['name']) # 輸出 Tom
還可以通過 dict() 函數來創建字典
dict2 = dict([('name', 'Tom'), ('age', 18), ('city', 'New York')])
print(dict2) # 輸出 {'name': 'Tom', 'age': 18, 'city': 'New York'}
字典也支持修改、添加、刪除操作
# 修改
dict1['age'] = 19
print(dict1) # 輸出 {'name': 'Tom', 'age': 19, 'city': 'New York'}
# 添加
dict1['gender'] = 'Male'
print(dict1) # 輸出 {'name': 'Tom', 'age': 19, 'city': 'New York', 'gender': 'Male'}
# 刪除
del dict1['gender']
print(dict1) # 輸出 {'name': 'Tom', 'age': 19, 'city': 'New York'}
二、Dict的優勢
Python中的字典具有以下幾個優勢:
1、快速定位元素:使用鍵來訪問元素的時間複雜度是O(1),而列表的時間複雜度是O(n);
2、內存利用率高:與列表相比,字典佔用的內存空間更少;
3、可變性:字典是可變對象,支持添加、修改和刪除操作;
4、多種數據類型:字典中的鍵和值可以是任何數據類型。
三、Dict的常見應用場景
字典廣泛應用於Python編程中的各種場景,如:
1、配置管理:將用戶設置保存在字典中,以方便地讀取和修改;
2、數據庫訪問:將數據庫中的查詢結果保存在字典中,以方便地進行數據分析和展示;
3、統計和計數:使用字典的鍵來記錄元素的出現次數;
4、郵件合併:使用字典將用戶信息與郵件模版進行合併。
下面是一個統計列表中元素出現次數的例子:
lst = ['apple', 'banana', 'apple', 'orange', 'banana', 'pear', 'pear', 'peach']
cnt_dict = {}
for item in lst:
if item in cnt_dict:
cnt_dict[item] += 1
else:
cnt_dict[item] = 1
print(cnt_dict) # 輸出 {'apple': 2, 'banana': 2, 'orange': 1, 'pear': 2, 'peach': 1}
四、總結
Python中的字典是一種非常實用的數據類型,它具有快速定位元素、內存利用率高、可變性、多種數據類型等優勢,並且在各種編程場景中都得到廣泛應用。
完整代碼如下:
# 定義字典
dict1 = {'name': 'Tom', 'age': 18, 'city': 'New York'}
# 訪問字典中的值
print(dict1['name']) # 輸出 Tom
# 創建字典
dict2 = dict([('name', 'Tom'), ('age', 18), ('city', 'New York')])
print(dict2) # 輸出 {'name': 'Tom', 'age': 18, 'city': 'New York'}
# 修改
dict1['age'] = 19
print(dict1) # 輸出 {'name': 'Tom', 'age': 19, 'city': 'New York'}
# 添加
dict1['gender'] = 'Male'
print(dict1) # 輸出 {'name': 'Tom', 'age': 19, 'city': 'New York', 'gender': 'Male'}
# 刪除
del dict1['gender']
print(dict1) # 輸出 {'name': 'Tom', 'age': 19, 'city': 'New York'}
# 統計列表中元素出現次數
lst = ['apple', 'banana', 'apple', 'orange', 'banana', 'pear', 'pear', 'peach']
cnt_dict = {}
for item in lst:
if item in cnt_dict:
cnt_dict[item] += 1
else:
cnt_dict[item] = 1
print(cnt_dict) # 輸出 {'apple': 2, 'banana': 2, 'orange': 1, 'pear': 2, 'peach': 1}
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/196868.html