首页 > 编程语言 > 详细

python |生成器

时间:2020-12-05 15:13:50      阅读:22      评论:0      收藏:0      [点我收藏+]

 

1.什么是生成器?

  • 生成的工具。
  • 生成器是一个 “自定义” 的迭代器, - 本质上是一个迭代器。

2.如何实现生成器

但凡在函数内部定义了的yield,
调用函数时,函数体代码不会执行,
会返回一个结果,该结果就是一个生成器。

yield:

  • 每一次yield都会往生成器对象中添加一个值。
  • yield只能在函数内部定义
  • yield可以保存函数的暂停状态

yield与return:

  • 相同点:

    • 返回值的个数都是无限制的。
  • 不同点:

    • return只能返回一次值,yield可以返回多个值

示例 自定义range

1
2
3
4
5
6
7
8
9
10
11
def my_range(start, end=None, step=1):
if end is None:
end = start
start = 0
while start < end:
yield start
start += step


for i in my_range(1,11,2):
print(i)

python |生成器

原文:https://www.cnblogs.com/huangjiangyong/p/14089074.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!