例項學習 Python dict 字典表推導

歡迎關注我們的頭條號,學習程式設計純乾貨!

Python 中的列表推導功能十分靈活,用過的小夥伴應該有深刻的印象。實際上 Python 字典表 dict 也可以實現推導,語法也與列表推導類似。

我們先來看下字典表資料結構,有兩個要點:

鍵:用於快速搜尋資料項,要求唯一不可重複

值:實際值,可以重複

實際宣告可以使用 dict(key=value,。。。) 函式構造,也可以直接使用花括號“{}”宣告鍵值 :

例項學習 Python dict 字典表推導

字典表宣告

觀察字典表的鍵值,可以通過幾個方法用於獲取鍵值,返回可迭代物件:

例項學習 Python dict 字典表推導

獲取字典表鍵/值及鍵值對

字典表推導

類似於 Python list 列表推導,字典表推導可以用一行程式碼實現 for 迴圈完成的 dict 構造功能。

字典表推導語法

有別於列表推導使用方括號“[]”作為外側型別宣告符號,字典表推導使用花括號“{}”

{key: value for (key, vlaue) in iterable}

iterable 為可迭代物件,如:列表,元組,字串,range 等。

例,分別使用迴圈和推導構造字典表:

例項學習 Python dict 字典表推導

for 迴圈與推導字典表比較

例,將前 5 小寫字母及對應 ascii 序號作為鍵值對生成字典表:

例項學習 Python dict 字典表推導

以字母為鍵推導生成字典表

例,合併不同序列作為鍵值對:

例項學習 Python dict 字典表推導

合併不同序列生成鍵值對

例,根據已有字典表推導:

例項學習 Python dict 字典表推導

根據已有字典表推導

例,在字典表推導中使用 if 實現條件過濾:

例項學習 Python dict 字典表推導

推導過程中加入 if 過濾條件

例,字典表推導中應用 if...else 實現三元表示式:

例項學習 Python dict 字典表推導

if。。。else 實現三元表示式

例,字典表推導過程中刪除特定項:

例項學習 Python dict 字典表推導

推導過程中刪除特定項

【關注我們,第一時間學習程式設計乾貨】

TAG: 推導字典鍵值列表Python