列表生成式
如果要生成[1x1, 2x2, 3x3, ..., 10x10]怎么做?
>>> [x * x
for x
in range(1, 11
)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
for循环后面还可以加上if判断,这样我们就可以筛选出仅偶数的平方:
>>> [x * x
for x
in range(1, 11)
if x % 2 ==
0]
[4, 16, 36, 64, 100]
还可以使用两层循环,可以生成全排列:
>>> [m + n
for m
in 'ABC' for n
in 'XYZ']
['AX',
'AY',
'AZ',
'BX',
'BY',
'BZ',
'CX',
'CY',
'CZ']
因此,列表生成式也可以使用两个变量来生成list:
>>> d = {
'x':
'A',
'y':
'B',
'z':
'C' }
>>> [k +
'=' + v
for k, v
in d.items()]
['y=B',
'x=A',
'z=C']
转载于:https://www.cnblogs.com/imageSet/p/7523701.html