生成列表
>>> [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'
]
匿名函数
>>> f = lambda x,y: x * y
>>> f
<function <lambda> at 0x101c6ef28>
>>> f(1,2)
2
x,y为接收的参数,‘:后为返回值’
切片
前10个数,每两个取一个:
>>> L[:10:2]
[0, 2, 4, 6, 8]
所有数,每5个取一个:
>>> L[::5]
[0, 5, 10, 15, 20, 25, 30, 35, 40, 45, 50, 55, 60, 65, 70, 75, 80, 85, 90, 95]
顺序颠倒
L[::-1]