列表生成式,指在列表中,按照一定規則,快速生成列表元素的方式。
接下來,我們舉幾個例子,看下普通的列表生成與使用列表生成式在書寫及效能上有何區別。
1、生成乙個包含10000000個元素的列表
2、求0~100之間的所有奇數
思路:step1、迴圈0~100
step2、用模運算判斷是否是奇數
3、元素篩選及處理
上面兩個例子很簡單,當然,列表生成式的功能遠不止於此。下面,我們完成一些稍微複雜的需求。
4、錯誤語法示範
#if在for迴圈後,加else報錯
result =
[i for i in
range
(100
)if i %2!=
0else
]#表示式執行多行語句
result =
[i+=
1;i*i for i in
range
(100
)]
報錯:
5、總結
1、列表生成式能大幅度簡化**、使其更為簡潔優雅
2、能有效提高**效率
3、可對列表元素進行篩選處理
(1)單個條件判斷,if寫在for迴圈後,後面不能跟else
(2)if…else判斷寫在for迴圈之前
4、元素表示式只能進行單語句操作
python高階特性 列表生成式
本文 廖雪峰的官方 列表生成式即list comprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用list range 1,11 list range 1,11 1,2,3,4,5,6,...
python 高階特性列表生成式
列表生成式即list comprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用list range 1,11 list range 1 11 1,2 3,4 5,6 7,8 9,10 但...
Python高階特性 列表生成式
列表生成式即list comprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。最常見的例子 生成list 1,2,3,4,5,6,7,8,9,10 可以用list range 1,11 list range 1,11 1,2,3,4,5,6,7,8,9,10 ...