PYTHONOPTIMIZE 在 python 解释器中做什么?

Dlu*_*tAF 4 python environment-variables supervisord

我与主管一起运行 python 任务,当我尝试在 python 任务中使用 mutilprocess 时,我遇到了错误

"File/usr/local/Cellar/python/2.7.6/Frameworks/Python.framework/Versions/2.7/lib/python2.7/multiprocessing/process.py", line 124, in start 

'daemonic processes are not allowed to have children'" 
Run Code Online (Sandbox Code Playgroud)

但是当我在终端中执行命令后就可以了。"export PYTHONOPTIMIZE=1"任何人都可以告诉我执行命令时发生了什么"export PYTHONOPTIMIZE=1"

Mar*_*ers 5

PYTHONOPTIMIZE将环境变量设置为与使用命令行开关1相同:-O

删除断言语句和任何以 的值为条件的代码__debug__

您看到的错误消息是一个AssertionError例外;源代码的相关部分使用assert

assert not _current_process._daemonic, \
       'daemonic processes are not allowed to have children'
Run Code Online (Sandbox Code Playgroud)

因此设置环境变量只会抑制断言。问题本身并没有消失。