列表生成式的語法是:
把要生成的元素放在前面,後面跟上for迴圈
比如說【x+10 for x in range(15)】
還可以迴圈加迴圈
【x + y for x in range(5) for y in range(7)】
常見到有
>>> range(1,100,2)
[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, 27, 29, 31, 33, 35, 37, 39, 41, 43, 45, 47, 49, 51, 53, 55, 57, 59, 61, 63, 65, 67, 69, 71, 73, 75, 77, 79, 81, 83, 85, 87, 89, 91, 93, 95, 97, 99]
>>>
但是當我們遇到稍微複雜一點的怎麼辦,求1到10的平方,我們可以使用下面的額方法
>>> [x*x for x in range(1,11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
新增條件判斷
>>> [x*x for x in range(1,10) if x%2==0]
[4, 16, 36, 64]
>>>
迴圈加迴圈:
>>> [m + n for m in range(1,10,2) for n in range(1,3) if m%2==1]
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
>>>
判斷某個元素是不是字串:
使用 isinstance(x,str)
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列表生成式
全都是重點!列表生成式即listcomprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用range 1,11 range 1,11 1,2,3,4,5,6,7,8,9,10 但如果要生成...
python列表生成式
全都是重點!列表生成式即listcomprehensions,是python內建的非常簡單卻強大的可以用來建立list的生成式。舉個例子,要生成list 1,2,3,4,5,6,7,8,9,10 可以用range 1,11 range 1,11 1,2,3,4,5,6,7,8,9,10 但如果要生成...