我一直在阅读Python解释器,特别是CPython和PyPy,我知道运行Python代码有两个步骤:
我的问题是,如果字节码是由CPython生成的,比如Python版本2.7.0,那么字节码会在PyPy上运行Python 2.7.0吗?
答案 0 :(得分:1)
没有。字节代码在版本之间发生变化,并使用幻数标记,以明确它将使用哪些解释器。而这只是在 CPython中,在CPython和PyPy之间,他们甚至不必就你在哪里寻找神奇数字达成一致,更不用说它意味着什么了。 .pyc
文件在很大程度上是一种优化,不像源文件那样可移植;如果他们与理解他们的翻译一起分发,他们只能分发。
基本上,Python语言标准涵盖源语法和库,而不是字节代码格式