實例學習 Python dict 字典表推導

Python 數據結構 編碼客 2019-07-08

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

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 字典表推導

推導過程中刪除特定項

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

相關推薦

推薦中...