歡迎關注我們的頭條號,學習程式設計純乾貨!
Python 中的列表推導功能十分靈活,用過的小夥伴應該有深刻的印象。實際上 Python 字典表 dict 也可以實現推導,語法也與列表推導類似。
我們先來看下字典表資料結構,有兩個要點:
鍵:用於快速搜尋資料項,要求唯一不可重複
值:實際值,可以重複
實際宣告可以使用 dict(key=value,。。。) 函式構造,也可以直接使用花括號“{}”宣告鍵值 :
字典表宣告
觀察字典表的鍵值,可以通過幾個方法用於獲取鍵值,返回可迭代物件:
獲取字典表鍵/值及鍵值對
字典表推導
類似於 Python list 列表推導,字典表推導可以用一行程式碼實現 for 迴圈完成的 dict 構造功能。
字典表推導語法
有別於列表推導使用方括號“[]”作為外側型別宣告符號,字典表推導使用花括號“{}”
{key: value for (key, vlaue) in iterable}
iterable 為可迭代物件,如:列表,元組,字串,range 等。
例,分別使用迴圈和推導構造字典表:
for 迴圈與推導字典表比較
例,將前 5 小寫字母及對應 ascii 序號作為鍵值對生成字典表:
以字母為鍵推導生成字典表
例,合併不同序列作為鍵值對:
合併不同序列生成鍵值對
例,根據已有字典表推導:
根據已有字典表推導
例,在字典表推導中使用 if 實現條件過濾:
推導過程中加入 if 過濾條件
例,字典表推導中應用 if...else 實現三元表示式:
if。。。else 實現三元表示式
例,字典表推導過程中刪除特定項:
推導過程中刪除特定項
【關注我們,第一時間學習程式設計乾貨】