【问题标题】:What are python generators? [duplicate]什么是 python 生成器? [复制]
【发布时间】:2011-04-17 06:37:33
【问题描述】:

可能重复:
What can you use Python generator functions for?

我尝试阅读有关 python 生成器的信息,但对生成器可以做什么的概念不太了解,我是 python 新手

请告诉我 谢谢

【问题讨论】:

标签: python generator


【解决方案1】:

这里的演示文稿很好地解释了生成器:

http://www.dabeaz.com/generators/index.html

我还没有找到更高级的流水线的用途,但我一直使用通用技术来解析日志文件。

【讨论】:

    【解决方案2】:

    简单地说,Python 中的生成器是一个可以在生成的值之间维护状态的函数。阅读this

    【讨论】:

      【解决方案3】:

      虽然 Yassin 的回答完全正确,但我宁愿换一种解释:生成器是一个随时间返回多个值的函数,其中每个值都会在您请求时生成(并返回)。

      【讨论】:

        【解决方案4】:

        http://docs.python.org/tutorial/classes.html#generators先阅读这篇文章。

        基本上,生成器是可迭代的对象。这里的神奇词是yield。 不用使用 return 语句,而是使用 yield,它不会停止函数的执行,而是返回一些东西。为了让您能够使用生成器返回的内容,您必须对其进行迭代。

        【讨论】:

          猜你喜欢
          • 2011-04-12
          • 2014-11-14
          • 2014-04-25
          • 2015-10-07
          • 2019-06-01
          • 2017-09-25
          • 1970-01-01
          • 2018-09-15
          • 2019-06-14
          相关资源
          最近更新 更多