如果optimize标志是-O或-OO,则从正在运行的python脚本中检测

nau*_*ghi 11 python flags sys

有时我想用一个用于启动父进程的相同优化标志来生成子进程.

我可以使用类似的东西:

optimize = not __debug__

但这样我就匹配了两个-O-OO旗帜.

是否有一些包含该信息的python内部状态?

nau*_*ghi 10

在对文档进行一些挖掘之后,我发现sys.flags结构序列(http://docs.python.org/dev/library/sys#sys.flags)具有optimize包含我正在搜索的信息的属性.

python -c "import sys; print sys.flags.optimize" - > 0

python -O -c "import sys; print sys.flags.optimize" - > 1

python -OO -c "import sys; print sys.flags.optimize" - > 2