pyc 文件与 python 的次要版本无关吗?
是否可以安全地加载使用不同次要版本的 python 生成的 pyc 文件?
例如 2.5.1 和 2.5.5?
我的猜测是,幻数不会随着次要版本的变化而改变。
如果我引用这个文件 import.c 幻数对应于变量 pyc_magic
(等于 MAGIC 或 MAGIC+1 )
文件注释如下:
拒绝其他 Python 版本生成的 .pyc 文件的魔法词。 它应该针对字节码的每个不兼容更改而更改。
我没有看到 python 小版本的不同数字,但我们可以假设它将来不会改变吗?
Is it possible and safe to load pyc files made with a different minor version of python?
For instance 2.5.1 with 2.5.5?
My guess is that the magic number does not change with minor versions.
If I refer to this file import.c
the magic number corresponds to the variable pyc_magic
( equals MAGIC or MAGIC+1 )
The file comments say:
Magic word to reject .pyc files generated by other Python versions.
It should change for each incompatible change to the bytecode.
I don't see different number for python minor versions, but can we assume it won't change in the future?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
你不能假设它不会改变。每当我需要分发 .pyc 文件而不是可读的 .py 文件时,我最终也会发布一个 Python 二进制文件。
You can't assume that it won't change. Whenever I've needed to distribute .pyc files instead of readable .py files, I've ended up shipping a Python binary too.