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语句
[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学习22:列表解析(列表综合深入)
- python的列表解析
- Python 列表解析
- Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
- python列表解析
- python之列表解析与生成器
- Python 列表解析和生成器表达式
- 零基础学python-2.16 列表解析
- python列表解析
- C++解析Python返回的列表
- python生成器表达式和列表解析
- python生成器表达式和列表解析
- python高级:列表解析和生成表达式
- python 列表解析
- 零基础学python-19.2 列表解析与序列映射函数map(2)增加分支测试与嵌套循环
- python基础-列表解析
- python之列表推导式及嵌套列表解析学习
- Python中的列表解析和生成表达式
- python列表解析
- python--迭代器,生成器,三元表达式,列表解析,生成器表达式