.pyo 文件是 Python 源代码文件(.py)经过编译后的版本。它是通过在运行 Python 时使用 -O 或 -OO 优化标志(Optimization flags)生成的。这些标志会指示 Python 解释器在编译过程中执行特定优化,例如移除断言语句(assert statements)以及在使用 -OO 标志时移除文档字符串(docstrings)。生成的 .pyo 文件包含了字节码(bytecode),这是一种比源代码更低级的表示形式,能够直接由 Python 虚拟机(PVM)执行。使用 .pyo 文件的一个主要目的是通过跳过编译步骤来缩短 Python 程序的启动时间。然而,在现代 Python 环境中,这种性能提升往往并不显著。此外,.pyo 文件具有版本依赖性,即它们只能在与其编译版本相同的 Python 环境中运行,且文件内容不是人类可读的。在分发已编译的 Python 代码时,它们通常与 .pyc 文件(非优化编译文件)配合使用。值得注意的是,自 Python 3.5 版本起,.pyo 扩展名已被废弃,取而代之的是存储在 __pycache__ 目录下的 .pyc 文件,其优化级别会直接体现在文件名中(例如 .opt-1.pyc)。