1. 程式人生 > 實用技巧 >python-for表示式

python-for表示式

  for表示式用於其他區間,元組,列表等可迭代物件建立新的列表

[表示式 for 迴圈計數器 in 可迭代物件]

for表示式與普通for迴圈的區別有兩點

  1. 在for關鍵字之前定義一個表示式,該表示式通常會包含迴圈計數器
  2. for 表示式沒有迴圈體,所以不需要冒號

for表示式同樣會對可迭代物件進行迴圈--可迭代物件包含幾個元素,該迴圈就對for之前的表示式進行幾次迴圈,並將每次迴圈的值收集起來作為新的列表元素。

for表示式最終的返回是列表,所以也稱for表示式為列表推導式,進行快速生成列表

 list_1 = [x * x for x in range(10)]
  2 print
(list_1) 3 """ 4 還可以在for表示式中新增if條件進行元素的篩選 5 """ 6 list_1 = [x * x for x in range(10) if x > 4] 7 print(list_1) 8 """ 9 如果將for表示式的方括號變成圓括號,for表示式將不在生成列表,而是生> 成生成器 10 """ 11 c_generatoe = (x * x for x in range(1,10)) 12 for i in c_generatoe: 13 print
(i) 14 """ 15 for表示式可以使用多個迴圈,等價於迴圈巢狀 16 """ 17 list_1 = [(x,y) for x in range(1,5) for y in range(1,5)] 18 print(list_1) 19 #等價於以下的迴圈巢狀 20 list_1 = [] 21 for x in range(1,5): 22 for y in range(1,5): 23 list_1.append((x,y)) 24 print(list_1)