一、列表推導式 寫點:[結果 for 變數 in 可迭代對象 if 判斷] 二、字典推導式 寫法:[結果 for 變數 in 可迭代對象 if 判斷] 三、集合推導式 寫法:[結果 for 變數 in 可迭代對象 if 判斷] 結論: 推導式比較耗記憶體。一次載入。而生成器表達式幾乎不占用記憶體。使用的 ...
一、列表推導式
- 寫點:[結果 for 變數 in 可迭代對象 if 判斷]
lst = [i for i in range(1, 20) if i % 2 == 0] print(lst) # [2, 4, 6, 8, 10, 12, 14, 16, 18]
二、字典推導式
- 寫法:[結果 for 變數 in 可迭代對象 if 判斷]
lst = [11, 22, 33] dic = {i: lst[i] for i in range(len(lst))} print(dic) # {0: 11, 1: 22, 2: 33}
三、集合推導式
- 寫法:[結果 for 變數 in 可迭代對象 if 判斷]
lst = [1, 8, 33, 44, -1, -8, 12] s = {abs(i) for i in lst} print(s) # {1, 33, 8, 44, 12}
結論:
- 推導式比較耗記憶體。一次載入。而生成器表達式幾乎不占用記憶體。使用的時候才分配和使用記憶體。