Python 字典推導式
在本教程中,我們將學習如何在 Python 中使用字典推導式。如果您已經熟悉列表推導式,那麼學習字典推導式將不會花費太多時間。
我們需要鍵值對來建立字典。如何使用字典推導式獲取這些鍵值對?請參見字典推導式的通用語句。
{key: value for ___ in iterable}我們需要填寫上述語句以完成字典推導式。有很多方法可以填寫它。讓我們看看一些最常見的方法。
讓我們看看如何在 10 的範圍內生成數字作為鍵,並將它們的平方作為值。我們的結果應類似於 {0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}。請參見下面的程式碼。
示例
# creating the dictionary
squares = {i: i ** 2 for i in range(10)}
# printing the dictionary
print(squares)輸出
如果您執行上述程式碼,將得到以下結果。
{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81}如何使用此推導式從兩個列表建立字典?我們可以使用 zip 方法從兩個列表獲取並行值。讓我們看看如何從 [1, 2, 3, 4, 5] 和 [a, b, c, d, e] 建立字典。
示例
# keys
keys = ['a', 'b', 'c', 'd', 'e']
# values
values = [1, 2, 3, 4, 5]
# creating a dict from the above lists
dictionary = {key: value for (key, value) in zip(keys, values)}
# printing the dictionary
print(dictionary)輸出
如果您執行上述程式,將得到以下輸出。
{'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}我們還可以使用 enumerate 方法從單個列表生成一個字典,其中索引作為鍵。讓我們看看如何做到這一點。
示例
# values
values = ['a', 'b', 'c', 'd', 'e']
# generating a dict using enumerate
dictionary = {key: value for (key, value) in enumerate(values)}
# printing the dict
print(dictionary)輸出
如果您執行上述程式碼,則將得到以下輸出。
{0: 'a', 1: 'b', 2: 'c', 3: 'd', 4: 'e'}結論
您可以根據需要使用字典推導式。學習掌握字典推導式的最佳方法是在有可能性時隨時使用它們。如果您在本教程中有任何疑問,請在評論部分提出。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP