<分区>
我对 python 生成有一个困惑
源码->>字节码-->python虚拟机
c语言也生成字节码还是直接编译?
如果 c 不生成字节码,这就是它被视为低级语言的原因?因为 Assembly 也不生成字节码,所以它是低级的,因为它直接在机器上执行?
<分区>
我对 python 生成有一个困惑
源码->>字节码-->python虚拟机
c语言也生成字节码还是直接编译?
如果 c 不生成字节码,这就是它被视为低级语言的原因?因为 Assembly 也不生成字节码,所以它是低级的,因为它直接在机器上执行?
最佳答案
字节码对 CPU 来说不是自然的,因此它们需要解释(通过称为解释器的 CPU native 代码)。
您编写的 python 代码被编译成 python 字节码,它创建扩展名为 .pyc 的文件。如果编译成功,您的字节码(存在于编译步骤中创建的 pyc 文件中)将由适当的虚拟机执行。
有python编译器吗?
PyPy 是 python 代码的 JIT 编译器。 Nuitka,Nuitka 尝试将纯 Python 翻译成机器码(通过 C++ 编译器)而不是字节码,同时在运行时使用 libpython。另一个是 ShedSkin。它将隐式静态类型的 Python 编译为 C++、独立程序或扩展模块。
关于python - 为什么python是低级的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39684430/