当前位置: 移动技术网 > IT编程>脚本编程>Python > yield浅析-Python3

yield浅析-Python3

2019年08月06日  | 移动技术网IT编程  | 我要评论

魔刀传说,unionsem,中国达人秀20111211

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(迭代对象[, 默认参数]) 可用于迭代生成器对象, 但每次只会得到一次结果, 多次迭代可得到全部结果, 结束时会返回异常[或默认参数].

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网