欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

【转载】Yield,迭代器,生成器

发布时间:2025/10/17 编程问答 7 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【转载】Yield,迭代器,生成器 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
  • 迭代器(Iterator)
    迭代器是一个实现了迭代器协议的对象,Python中的迭代器协议就是有next方法的对象会前进到下一结果,而在一系列结果的末尾是,则会引发StopIteration。
    迭代器一个显而易见的好处就是:每次只从对象中读取一条数据,不会造成内存的过大开销。

  • 生成器(constructor)
    生成器函数在Python中与迭代器协议的概念联系在一起。简而言之,包含yield语句的函数会被特地编译成生成器。当函数被调用时,他们返回一个生成器对象,这个对象支持迭代器接口。函数也许会有个return语句,但它的作用是用来yield产生值的。

  • 不像一般的函数会生成值后退出,生成器函数在生成值后会自动挂起并暂停他们的执行和状态,他的本地变量将保存状态信息,这些信息在函数恢复时将再度有效。

    https://www.sohu.com/a/336694803_120104204

    总结

    以上是生活随笔为你收集整理的【转载】Yield,迭代器,生成器的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。