Bootstrap

Python---列表推导式

列表推导式可以利用 range 区间、元组、列表、字典和集合等数据类型,快速生成一个满足指定需求的列表。

其语法格式如下:

[表达式 for 迭代变量 in 可迭代对象 [if 条件表达式] ]

此格式中,[if 条件表达式] 不是必须的,可以使用,也可以省略。

其实,除去 [if 条件表达式] 部分,其余各部分的含义以及执行顺序和 for 循环是完全一样的(表达式其实就是 for 循环中的循环体),即它的执行顺序如下所示:

for 迭代变量 in 可迭代对象
    表达式

例子:

my_list=[x*x for x in range(10)]
print(my_list)

my_list2=[x*x for x in range(20) if x%3==0]
print(my_list2)

my_list1=[(x,y) for x in range(10) for y in range(10)]
print(my_list1)

运行结果为:

[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
[0, 9, 36, 81, 144, 225, 324]
[(0, 0
;