一、了解Python字典
Python字典是一種可變數據類型,其存儲的是鍵-值對(key-value pairs)。每個鍵關聯一個值,就像一個人名和一個電話號碼之間的關係一樣。
# 創建一個字典 phone_book = {'Alice': '123456', 'Bob': '223344', 'Charlie': '334455'} # 列印字典中所有的鍵 print('Names:', phone_book.keys()) # 列印字典中所有的值 print('Numbers:', phone_book.values()) # 列印字典中的鍵和值 print('Phone book:', phone_book.items())
輸出結果:
Names: dict_keys(['Alice', 'Bob', 'Charlie']) Numbers: dict_values(['123456', '223344', '334455']) Phone book: dict_items([('Alice', '123456'), ('Bob', '223344'), ('Charlie', '334455')])
二、使用字典的鍵
Python字典的鍵可以是任何不可變類型,如字元串、數值、元組等,但通常我們使用字元串作為鍵。
以下是一些使用字典鍵的例子:
# 創建一個字典 movies = {'The Shawshank Redemption': 1994, 'The Godfather': 1972, 'The Dark Knight': 2008} # 輸出某個鍵的值 print(movies['The Godfather']) # 添加一個鍵值對 movies['The Godfather: Part II'] = 1974 # 刪除一個鍵值對 del movies['The Dark Knight']
三、使用字典的值
Python字典的值可以是任何數據類型,可以是int、str、list、dict等。
以下是一些使用字典值的例子:
# 創建一個字典 employee = {'name': 'John', 'age': 30, 'department': 'Sales', 'salary': 5000} # 輸出某個鍵的值 print(employee['department']) # 修改某個鍵的值 employee['salary'] = 5500 # 將字典轉換為列表 employee_list = list(employee.values()) # 判斷某個值是否存在於字典中 if 'John' in employee.values(): print('John is an employee.')
四、字典的遍歷
Python字典可以使用for循環依次遍歷它的鍵和值。
# 創建一個字典 car = {'brand': 'Toyota', 'model': 'Camry', 'year': 2018, 'price': 25000} # 遍歷字典的鍵 for key in car: print(key) # 遍歷字典的值 for value in car.values(): print(value) # 遍歷字典的鍵和值 for key, value in car.items(): print(f'{key}: {value}')
五、字典的複製與合併
當我們需要對一個字典進行處理時,可以使用複製和合併操作。
# 創建一個字典 person = {'name': 'Alice', 'age': 25, 'address': 'New York'} # 複製字典 person_copy = person.copy() # 合併兩個字典 new_person = {'gender': 'Female', 'occupation': 'Engineer'} person.update(new_person)
六、字典的排序
Python的字典是無序的,但我們可以使用sorted()函數對鍵進行排序。
# 創建一個字典 fruit = {'apple': 5, 'orange': 2, 'banana': 3} # 對字典的鍵進行排序 sorted_keys = sorted(fruit.keys()) # 對字典的鍵值對進行排序 sorted_items = sorted(fruit.items(), key=lambda x: x[1])
七、總結
Python字典是一個非常強大的數據類型,可以用於存儲大量的數據。我們可以使用鍵來訪問字典中的值,也可以使用for循環遍歷字典中的鍵和值。除此之外,我們還可以對字典進行複製、合併和排序等操作,讓我們更加高效地處理數據。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/279520.html