2019-07-08
阅读量:
896
生成器表达式
生成器表达式是通过一个Python表达式语句去计算一系列数据,但生成器定义的时候数据并没有生成,而是返回一个对象,这个对象只有在需要的时候才根据表达式计算当前需要返回的数据:
生成器表达式来源于迭代和列表解析(列表解析后面章节介绍)的组合,生成器和列表解析类似,但是它使用小括号而不是中括号。生成器返回按需产生结果的一个对象,而不是一次构建一个结果列表;
生成器表达式的语法如下:
(expr for iter_var in iterable)
(expr for iter_var in iterable if cond_expr)
其中:
expr为计算 生成器元素值的表达式
for iter_var in iterable iter_var:表示针对在可迭代对象iter_var中的每个元素进行表达式运算
if cond_exp:表示可迭代对象中的元素需要满足指定条件才会参与表达式运算
说明
直接在一对既有的小括号内(如在函数调用中)使用生成器表达式时,无需再添加一对小括号。例如:sum(i ** 2 for i in range(10));
生成器表达式与列表解析的语法非常象,由于涉及部分相关的函数,在列表解析相关的章节老猿再回头介绍一下生成器表达式有关的内容。






评论(0)


暂无数据
推荐帖子
2条评论
6条评论
7条评论