Menu Close

2.5. 解释代码

本节演示了如何对 Python 编写的程序进行字节编译,以及使用 bash 编写的程序的原始解析。

注意

在下面的两个示例中,文件顶部的 #! 行称为 shebang,不是编程语言源代码的一部分。

shebang 启用文本文件作为可执行文件:系统程序加载程序解析包含 shebang 的行以获取二进制可执行文件的路径,然后用作编程语言解释器。功能要求将文本文件标记为可执行文件。

2.5.1. 字节编译代码

本节演示了如何将 Python 编写的 pello.py 程序编译成字节代码,然后由 Python 语言虚拟机执行。

Python 源代码也可以是原始解释器,但编译的版本速度更快。因此,RPM Packagers 更喜欢将字节版本打包为最终用户发布。

pello.py

#!/usr/bin/python3

print("Hello World")

字节程序的流程因以下因素而异:

  • 编程语言
  • 语言虚拟机
  • 与该语言一起使用的工具和流程
注意

Python 通常进行字节编译,但不采用这里描述的方式。以下过程的目的并不是满足社区标准,而是为了简单过程。有关实际工作环境中的 Python 指南,请参阅打包和发布

使用这个步骤将 pello.py 编译成字节代码:

步骤

  1. 字节编译 pello.py 文件:

    $ python -m compileall pello.py
    
    $ file pello.pyc
    pello.pyc: python 2.7 byte-compiled
  2. pello.pyc 中执行字节代码:

    $ python pello.pyc
    Hello World