简介
列表解析是Python是迭代的一种,可以方便的实现for或while循环的功能,且运行速度相比要快的多,本文简要介绍Python列表解析的概念和应用。
列表解析
先来看一个列表解析的简单例子:
Python 2.7.9 (default, Dec 10 2014, 12:28:03) [MSC v.1500 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> L = [1, 2, 3, 4, 5, 6]
>>> L = [x + 10 for x in L]
>>> print L
[11, 12, 13, 14, 15, 16]
>>>
列表解析写在一个方括号中,因为它们最终是构建一个新的列表的一种方式。它们以所组成的一个任意表达式开始,该表达式组成一个循环变量(x + 10),这之后跟着一个看做是一个for循环头部的部分,它声明了循环变量以及一个可迭代对象(for x in L)。
要运行该表达式,Python解释器执行一个遍历L的迭代,按照顺序把x赋值给每个元素,并且收集对各元素运行左边的表达式的结果。得到的结果列表就是列表解析所表达的内容。
优点:列表解析比手动的for循环语句运行快,因为它们的迭代在解释器内部是以C语言的速度执行的,而不是以手动Python代