列表生成式list comprehensions,是Python內(nèi)置的非常簡單卻強大的可以用來創(chuàng)建list的生成式。
舉例,要生成list[1,2,3,4,5,6,7,8,9]可以用list(range(1,10)):
>>> list(range(1,10))
[1,2,3,4,5,6,7,8,9]
>>> [x * x for x in range(1,11)]
[1,4,9,16,25,36,49,64,81,100]
for 循環(huán)后面還可以加上if判斷:
>>> [x * x for x in range(1,11) if x % 2 == 0]
[4,16,36,64,100]
還可以用兩層循環(huán),生成全排列:
>>> [m + n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']