首页 > 编程语言 > 详细

yield浅析-Python3

时间:2019-08-06 23:44:53      阅读:120      评论:0      收藏:0      [点我收藏+]

yield 浅析

先来一段代码:

def fun1():
  for i in range(5):
    yield i
    print("继续调用继续执行")

gen1 = fun1()
print(gen1)

for i in gen1:
  print(i)

"""# 执行结果:
<generator object fun1 at 0x0365DEB0>
0
继续调用继续执行
1
继续调用继续执行
2
继续调用继续执行
3
继续调用继续执行
4
继续调用继续执行
"""

直接得到结果

  1. yield存在于函数体中, 用于返回生成器对象, 使用了yield的函数就叫做生成器.
  2. 迭代生成器对象时, 每迭代一次便返回函数体继续执行, 直到没有结果为止
  3. 另外有 next(迭代对象[, 默认参数]) 可用于迭代生成器对象, 但每次只会得到一次结果, 多次迭代可得到全部结果, 结束时会返回异常[或默认参数].

yield浅析-Python3

原文:https://www.cnblogs.com/xust14521/p/11312028.html

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