列表生成式
现在有个需求,看列表[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
,要求你把列表里的每个值加1。
a = list(range(10)) print(a) a = [i+1 for i in a] print(a)
输出
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
简写为:
a = [i+1 for i in range(10)] print(a)
这样的写法就叫做列表生成式
a = [i+1 for i in range(10)]循环 for i in range(10),并对每一个列表中的值进行运算,之后再存回此列表。
只能用于列表、元组、字符串,不能写入字典
直接对列表的值进行改动
可以是三元运算
a = [i if i <5 else i*i for i in range(10)] print(a)
输出
[0, 1, 2, 3, 4, 25, 36, 49, 64, 81]