python生成器函数

发布时间:2022-04-25 09:40:04 人气:86 作者:多测师

  为什么叫生成器函数?因为它随着时间的推移生成了一个数值队列。一般的函数在执行完毕之后会返回一个值然后退出,但是生成器函数会自动挂起,然后重新拾起急需执行,他会利用yield关键字关起函数,给调用者返回一个值,同时保留了当前的足够多的状态,可以使函数继续执行,生成器和迭代协议是密切相关的,迭代器都有一个__next__()__成员方法,这个方法要么返回迭代的下一项,要买引起异常结束迭代。

  # 函数有了yield之后,函数名+()就变成了生成器

  # return在生成器中代表生成器的中止,直接报错

python生成器函数

  # next的作用是唤醒并继续执行

  # send的作用是唤醒并继续执行,发送一个信息到生成器内部

  '''生成器'''

  def create_counter(n):

  print("create_counter")

  while True:

  yield n

  print("increment n")

  n +=1

  gen = create_counter(2)

  print(gen)

  print(next(gen))

  print(next(gen))

  结果:

  create_counter

  2

  increment n

  3

  Process finished with exit code 0

  以上内容为大家介绍了python生成器函数,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/


返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线