您的位置:首页 > 编程语言 > Python开发

python 列表解析

2011-09-26 22:25 218 查看
表达式:

[expr for iter_var in iterable]

这个表达式里的核心是for循环,它迭代iterable对象的所有条目var。expr应用于序列的每一个成员,返回的将是该表达式产生的新的列表。

例子:对a的每个条目乘以2,并组成新的列表

采用map+lambda:
a=[1,2,3,4,5] map(lambda x:x*2, a )

采用列表解析:
[x*2 for x in a]

扩展版本
[expr for iter_var in iterable if con_expr]
比之前增加了一个if判断,该表达式在迭代时将会对序列的每个条目进行判断,过滤掉不符合规则的条目

多重循环版本
[expr for x in iterable_a for y in iterable_b]
For语句从左到右依次为从外到内

迭代多维矩阵:
[(x+1,y+1) for x in range(3) for y in range(5) ] 迭代一个三行五列的矩阵

注意:列表解析支持多重循环和多个if语句
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  职场 休闲 python