列表解析表示你可以在一行中使用一个for循环将所有值放到一个列表当中。列表解析甚至能做更复杂的事情,比如挑选出符合要求的值放入列表。
python列表解析属于python的迭代中的一种,相比python for循环速度会快很多。下面看下python列表解析是怎么工作的。
example:
a = [x+2 for x in range(10)]
print a
输出的结果:
[2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
下面说下上面这个例子的执行过程:
python会在解释器里对range(10)进行迭代,依次把列表里的内容取出来,赋值给最左边的x,然后执行x+2的操作,并且把执行好的结果保存在列表里。等range(10)迭代完以后就新生成了一个列表,结果就是[2, 3, 4, 5, 6, 7, 8, 9, 10, 11],从上面可以看出,这也是建立python 列表的一个方法。
上面的例子如果用python for 循环来实现,那会是什么样的呢?