>>> L = []
>>> for x in range(1, 11):
... L.append(x * x)
...
>>> L
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
对于上面这种一层循环的表达式,还可以有更加简明清晰的写法,如下:
>>> [x * x for x in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
如果两层的话呢?
>>> [m + n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
相当于全排列了。
这个是一个 栗子:
>>>L = ['Hello', 'World', 18, 'Apple', None,2046,"zhaiJINGzhen",'175Cm','68KG','male','/N']
>>>[s.upper() if isinstance(s,str) else s for s in L]