Python Language列表理解


介紹

Python中的列表推導是簡潔的語法結構。通過將函數應用於列表中的每個元素,它們可用於從其他列表生成列表。以下部分解釋並演示了這些表達式的用法。

句法

  • [x,1 for x in(1,2,3)]#list comprehension,給出[2,3,4]
  • (x + 1表示x in(1,2,3))#generator表達式,將產生2,然後是3,然後是4
  • [x for x in(1,2,3)if x%2 == 0] #list comprehension with filter,give [2]
  • [x + 1 if x%2 == 0 else x for x in(1,2,3)] #list comprehension with ternary
  • [x + 1 if x%2 == 0 else x for x in range(-3,4)if x> 0] #list comprehension with ternary and filtering
  • {x for x in(1,2,2,3)}#set comprehension,給出{1,2,3}
  • {k:v代表k,v代表[('a',1),('b',2)]} #dict comprehension,給出{'a':1,'b':2}(python 2.7+和僅限3.0+)
  • [x,y代表[1,2]中的x [10,20]]#嵌套循環,給出[11,21,12,22]
  • [x,y代表[1,2,3]中的x,如果x> 2代表[3,4,5]中的y,則#1st檢查條件
  • [x,y為[1,2,3]中的x,[3,4,5]中的y,如果x> 2]#條件檢查第2次循環
  • [x for x in xrange(10)if x%2 == 0]#條件檢查循環數字是否為奇數

備註

理解是語法結構,它定義了特定語言特有的數據結構或表達式。正確使用理解將其重新解釋為易於理解的表達。作為表達式,可以使用它們:

  • 在作業的右側
  • 作為函數調用的參數
  • lambda函數的體內
  • 作為獨立的聲明。 (例如: [print(x) for x in range(10)]

列表理解 相關例子