python筆記 列表解析

2021-08-13 18:33:29 字數 1037 閱讀 6829

目錄

列表解析(list comprehension),或列表推導,是在乙個序列的值上應用乙個任意表示式,將其結果收集到乙個新的列表中並返回。它是python提供的一種生成列表的方法,能用一行**代替多行**,而且不損失任何可讀性。

簡單給個例子,如果我們需要0~100所有整數組成的列表,常規的**應該是這樣的:

a=

for i in range(101):

用列表解析來做就是:

a=[x for x in range(101)]

列表解析的基本形式如下:

[expressionfortargetiniterable]

其中,

expression 是針對列表中的元素進行任意操作的表示式

target 即為列表中的元素

iterable 可迭代物件,後面會詳細講解。

其通用形式如下:

[expressionfortarget1initerable1 [ if condition1 ]

for target1 in iterable2 [ if condition2 ] ……]

其中[ if condition ] 為可選項。

列表解析是python是迭代的一種,可以方便的實現for或while迴圈的功能,且執行速度相比要快的多。

簡單給個例子,如果我們需要0~100所有偶數組成的列表,常規的**應該這樣的:

a=

fori in range(101):

ifi%2==0:

用列表解析來做就是:

a=[i for i in range(101) if i%2==0]

python列表解析

列表解析是乙個列表對映出另乙個列表,它的基本形式是乙個方括號裡面包含乙個for語句對乙個iterable物件迭代 expression for target1 in iterable1 if condition1 for targetn in iterablen if conditionn 上面是列...

python 列表解析

m 1,2,3 4,5,6 7,8,9 col2 row 1 for row in m 獲取列表m的每個元素的第二個元素的值組成的列表 print col2 print row 1 1 for row in m 獲取列表m的每個元素的第二個元素 1的值組成的列表 print row 1 for ro...

Python列表解析

語法 1.expression for iter val in iterable 2.expression for iter val in iterable if cond expr l i 2 for i in range 1,11 print l 1,4,9,16,25,36,49,64,81,...