打包时如何设置解释器标志

How to set Interpreter flags when packaging

我想设置 -O 标志,以便在构建包时优化代码。

我使用 setuptools 构建包,最好在此处设置优化标志!

setup.py build_py 有一个选项 optimize:

$ python setup.py build_py --help | grep -A1 optimize
  --optimize (-O)   also compile with optimization: -O1 for "python -O", -O2
                    for "python -OO", and -O0 to disable [default: -O0]

它也适用于 setup.py install。对于 pip 传递 --install-option=-O1

但请记住,优化可能不会按照您的预期进行,而且可能会使事情变得更糟:它会删除 assert 语句和文档字符串,这并不总是您想要的。我建议避免这种情况 "optimization".