1
#!/usr/bin/python

import os
import sys

sys.path.append('/usr/bin/python')    
vs
os.environ['PYTHONPATH'] = '/usr/bin/python'

我正在将脚本作为 cron 作业运行,并希望将 PYTHONPATH 环境变量设置为“/usr/bin/python”以运行脚本。上面片段中提到的两者的正确方法是什么?

4

1 回答 1

1

更新sys.path.append()将更改当前脚本搜索模块/包的路径。如果您将环境传递给子进程,更新os.environ[]只会影响子进程。这些只会影响搜索模块/包的目录,因为/usr/bin/python通常 python 可执行文件都不会产生任何影响。

如果您尝试指定用于执行脚本的 python 版本,请在脚本顶部使用 shebang:

#!/usr/bin/python

确保脚本设置为可执行chmod +x script,然后直接通过 cron 执行。

于 2013-09-18T01:15:35.400 回答