【问题标题】:Can a Python generator be easily saved and reloaded from disk?Python 生成器可以轻松地从磁盘保存和重新加载吗?
【发布时间】:2012-02-05 09:25:42
【问题描述】:

有没有办法序列化生成器、当前状态和所有(局部变量等),以便您可以稍后加载包含序列化生成器的字符串,并能够从最后一个 yield 语句退出的地方直接获取功能?如果是,并且您知道带有代码示例的网页,请分享指向它的链接。

【问题讨论】:

  • 谷歌搜索给了我这个链接bugs.python.org/issue1092962 .. 所以生成器不能腌制(除非你向 Python 开发人员发送一个干净的补丁)。但在讨论该问题时可能会有一些线索。
  • @mkorpela。谢谢,至少我现在有了一个起点。

标签: python serialization generator


【解决方案1】:

【讨论】:

  • 最后一个 url 已经失效 :(
【解决方案2】:

Stackless Python 能够腌制生成器。 或者您可以尝试 PyPy 1.7,它还实现了许多无堆栈功能,包括生成器和函数的酸洗。

代码 sn-p:http://pastebin.com/p4RkVQkJ

Stackless Python 3.2 和 2.7.2 可以在这里下载:http://zope.stackless.com/download/sdocument_view

PyPy 1.7 可以在这里下载:http://pypy.org/download.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-06-21
    • 2011-06-20
    • 2017-08-29
    • 2013-06-10
    • 2023-01-24
    • 2012-11-13
    • 1970-01-01
    相关资源
    最近更新 更多