gpt4 book ai didi

python - 从不同的实例执行另一个 Python 实例

转载 作者:太空宇宙 更新时间:2023-11-03 13:04:27 24 4
gpt4 key购买 nike

我目前有一个脚本正在由一个程序执行,该程序带有自己的 Python 解释器。此版本不包含我需要的库,因此我使用 os.exec 对本地安装的 2.7 实例执行第二个脚本。

然而,第二个脚本在手动执行时运行完美,并且没有定义 PYTHONPATH。如果我在执行包装器和加载第二个脚本时记录 PYTHONPATH 的输出,它们都将 PYTHONPATH 初始化为原始解释器,这恰好也是一个 2.6 实例。这显然让我相信我传递了一些我没有预料到的环境变量,此外,在其他 2 个系统上,此设置按预期 100% 工作,而在这个系统上,此行为正在发生。有没有更简洁的方法可以创建包装器来调用第二个脚本?如果不是,我如何避免这种不必要的环境变量传递。

最佳答案

os.exec* 有很多变体命令:

execl(file, *args)
execle(file, *args, env)
execlp(file, *args)
execlpe(file, *args, env)
execv(path, args)
execve(path, args, env)
execvp(file, args)
execvpe(file, args, env)
  • l 变体使用*argsv 变体使用args
  • p 变体使用 PATH 环境变量查找 file
  • e 变量替换环境。非 e 变体使用 env当前进程。

您可以使用 e 变体之一,例如 os.execle,来控制传递给新进程的环境变量。

关于python - 从不同的实例执行另一个 Python 实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8863222/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com