一、字典的基本概念
在Python中,字典(Dictionary)是一種無序的、可變的數據類型,支持任意類型作為字典的鍵(key),鍵通常是不可變的類型,如字符串、數字或元組。字典以鍵值對的形式存儲數據,通過鍵來訪問對應的值。舉個例子,我們可以用字典來存儲一個人的信息:
person = {'name': 'John', 'age': 28, 'gender': 'male'} print(person['age']) # 輸出:28
字典中使用冒號(:)來分隔鍵和值,用逗號(,)來分隔不同的鍵值對,整個字典用大括號({})來表示。通過鍵來獲取值的語法是將鍵放在字典名稱之後,用方括號([])括住。
二、字典的操作
1. 插入元素
可以使用賦值語句來添加新鍵值對,例如:
person = {'name': 'John', 'age': 28, 'gender': 'male'} person['city'] = 'Beijing' print(person) # 輸出:{'name': 'John', 'age': 28, 'gender': 'male', 'city': 'Beijing'}
如果鍵已經存在於字典中,那麼原來與之關聯的值將被覆蓋。例如:
person = {'name': 'John', 'age': 28, 'gender': 'male', 'city': 'New York'} person['city'] = 'Beijing' print(person) # 輸出:{'name': 'John', 'age': 28, 'gender': 'male', 'city': 'Beijing'}
2. 刪除元素
可以使用del語句刪除字典中的元素,例如:
person = {'name': 'John', 'age': 28, 'gender': 'male', 'city': 'New York'} del person['city'] print(person) # 輸出:{'name': 'John', 'age': 28, 'gender': 'male'}
3. 獲取所有鍵和值
可以使用keys()方法、values()方法和items()方法來獲取所有的鍵、值和鍵值對,例如:
person = {'name': 'John', 'age': 28, 'gender': 'male'} keys = person.keys() values = person.values() items = person.items() print(keys) # 輸出:dict_keys(['name', 'age', 'gender']) print(values) # 輸出:dict_values(['John', 28, 'male']) print(items) # 輸出:dict_items([('name', 'John'), ('age', 28), ('gender', 'male')])
三、應用示例
1. 統計字符出現的次數
我們可以使用字典來統計一個字符串中每個字符出現的次數。首先,我們可以把字符串中的所有字符遍歷一遍,並且把它們作為鍵存儲到字典中。接着,如果遇到相同的字符,我們只需要把對應的值加1即可。例如:
text = 'hello, world' counter = {} for char in text: if char in counter: counter[char] += 1 else: counter[char] = 1 print(counter) # 輸出:{'h': 1, 'e': 1, 'l': 3, 'o': 2, ',': 1, ' ': 1, 'w': 1, 'r': 1, 'd': 1}
2. 模擬緩存
在計算機程序中,緩存是一種常見的優化手段,用於提高程序的性能。在Python中,我們可以使用字典來實現一個簡單的緩存。例如:
cache = {} def compute(x): if x in cache: return cache[x] else: result = x ** 2 + 1 cache[x] = result return result
在上面的代碼中,compute()函數接收一個參數x,如果x已經在緩存中了,那麼它會直接返回緩存中的結果;否則,它將計算x的平方加1,並且將這個結果存儲到緩存中。這樣,當下次再有函數調用時,就可以直接返回緩存中的結果,避免了重複計算。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/269834.html