每周500字每天写500字每天写1000字

python 5: 列表的解析表达法

2019-11-05  本文已影响0人  金石明镜

格式:

[表达式 for <条件>]

例1:

>>>[n * n for n in range(1, 11)]

[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

例2:

>>>[2 * n + 7 for n in range(1, 11)]

[9, 11, 13, 15, 17, 19, 21, 23, 25, 27]

例3:

>>> [n ** 3 for n in range(1, 11)]

[1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]

例4:

>>> [c for c in 'pizza']

['p', 'i', 'z', 'z', 'a']

例5:

>>>[c.upper() for c in 'pizza']

['P', 'I', 'Z', 'Z', 'A']

例6:

>>> names = ['al', 'mei', 'jo','del']

>>>names

['al', 'mei', 'jo', 'del']

>>>cap_names = [n.capitalize() for n in names]

>>>cap_names

['Al', 'Mei', 'Jo', 'Del']

例7:

>>>nums = [-1, 0, 6, -4, -2, 3]

>>>nums

[-1, 0, 6, -4, -2, 3]

>>> [n for n in nums if n>0]

[6, 3]

>>> [n for n in nums if n>0 or n%2==0]

[0, 6, -4, -2, 3]

>>> [n for n in nums if n>0 and n%2==0]

[6]

>>>import math

>>>[n for n in nums if n>0 and math.sqrt(n)>2]

[6]

上一篇 下一篇

猜你喜欢

热点阅读