一、什麼是Python字典
Python字典是一種可變容器模型,可以存儲任意數量的Python對象,每個對象都是通過一個唯一的鍵來訪問的。簡單來說,字典就是由鍵值對組成的。常用的鍵類型包括字符串、整數、元組等。而值則可以是任意類型的Python對象。
# 創建一個簡單的字典 person = {'name': '張三', 'age': 20, 'gender': '男'} print(person) # 輸出結果為:{'name': '張三', 'age': 20, 'gender': '男'}
二、Python字典的特點
使用Python字典具有以下幾個優點:
快速查找: Python字典使用哈希表(HASH TABLE)實現,因此查找速度非常快,不受容器的大小影響。
無序性: 字典中的元素是無序的,因此無法像列表、元組那樣使用索引進行訪問。
可變性: 字典是可變對象,可以修改鍵值對,添加或刪除元素。
鍵的唯一性: 字典的鍵必須是唯一的,如果重複添加,後面的鍵會覆蓋原先的值。
三、Python字典基本操作
1. 創建字典
可以使用花括號或者調用dict()函數來創建一個字典,鍵值對用冒號(:)分隔,不同的鍵值對用逗號(,)分隔。以下代碼演示了幾種創建字典的方式。
# 方法一:直接創建 person = {'name': '張三', 'age': 20, 'gender': '男'} print(person) # 方法二:使用dict()函數創建 person = dict(name='李四', age=25, gender='女') print(person) # 方法三:列錶轉字典 list1 = [("name", "王五"), ("age", 30), ("gender", "男")] person = dict(list1) print(person) # 方法四:元組轉字典 tuple1 = (("name", "趙六"), ("age", 35), ("gender", "女")) person = dict(tuple1) print(person)
2. 訪問字典元素
可以使用[key]的形式訪問字典的值,示例如下:
person = {'name': '張三', 'age': 20, 'gender': '男'} # 訪問字典鍵為name的值 print(person['name']) # 輸出結果為:張三
3. 修改字典元素
可以直接修改字典鍵對應的值,示例如下:
# 修改字典中的age鍵的值 person['age'] = 21 print(person) # 輸出結果為:{'name': '張三', 'age': 21, 'gender': '男'}
4.刪除字典元素
可以使用del語句刪除指定的鍵值對,示例如下:
# 刪除字典中的gender鍵值對 del person['gender'] print(person) # 輸出結果為:{'name': '張三', 'age': 21}
5.字典內置方法
Python字典有很多內置方法,可以方便地對字典進行操作,下面列舉常用的一些方法:
5.1 clear()方法
清空整個字典,示例如下:
person = {'name': '張三', 'age': 20, 'gender': '男'} person.clear() print(person) # 輸出結果為:{}
5.2 get()方法
獲取指定鍵的值,如果鍵不存在,則返回None或者指定的默認值,示例如下:
person = {'name': '張三', 'age': 20, 'gender': '男'} # 獲取鍵為name的值 print(person.get('name')) # 輸出結果為:張三 # 獲取不存在的鍵,返回None print(person.get('height')) # 輸出結果為:None # 獲取不存在的鍵,並返回指定的默認值 print(person.get('height', '未知')) # 輸出結果為:未知
5.3 items()方法
返回字典的所有鍵值對,每個鍵值對是一個元組,示例如下:
person = {'name': '張三', 'age': 20, 'gender': '男'} items = person.items() print(items) # 輸出結果為:dict_items([('name', '張三'), ('age', 20), ('gender', '男')])
5.4 keys()方法
返回字典的所有鍵,示例如下:
person = {'name': '張三', 'age': 20, 'gender': '男'} keys = person.keys() print(keys) # 輸出結果為:dict_keys(['name', 'age', 'gender'])
5.5 values()方法
返回字典的所有值,示例如下:
person = {'name': '張三', 'age': 20, 'gender': '男'} values = person.values() print(values) # 輸出結果為:dict_values(['張三', 20, '男'])
四、Python字典實戰案例
Python字典可以非常方便地應用在日常編程中,這裡列舉一個實戰案例:統計文章中每個單詞出現的頻率。
text = 'Python 是一種廣泛使用的解釋型、高級編程、通用型編程語言。' # 將字符串拆分成單詞列表 words = text.split() # 創建一個空字典用於存儲頻率 freq = {} # 遍歷單詞列表,統計頻率 for word in words: if word in freq: freq[word] += 1 else: freq[word] = 1 # 輸出結果 print(freq) # 輸出結果為:{'Python': 1, '是': 1, '一種': 1, '廣泛使用的解釋型、高級編程、通用型編程語言。': 1}
五、總結
Python字典是一種非常實用的數據容器,可以高效地存儲和提取數據。使用字典可以極大地方便數據的組織和處理,是Python編程中不可或缺的一部分。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/198118.html