相关疑难解决方法(0)

python:获取实际环境变量以修改并传递给子进程

好吧,似乎环境变量的情况在python中不一致。

在导入模块时使用os.environos.getenv返回 env 的状态来读取环境变量并不是什么秘密os。仍然可以使用分配给os.environ键来更新环境。

但是一旦我使用os.putenv或运行任何修改环境的 ctypes 代码,我就会发现实际进程环境和os.environ. Nuff 说,这个实际的环境将被保留给子进程,无论是用创建的os.system还是subprocess库的。就我而言,这是理想的行为。

现在我想查看和更改传递给子流程的环境。通常建议获取 的副本os.environ,修改它并作为参数传递以进行subprocess.Popen调用。但在这种情况下,由 ctypes 代码对环境所做的更新将丢失。

有没有办法克服这个问题?严格来说,有没有办法重新加载 os.environ 或使用其他工具获取具有实际环境的副本?

python subprocess environment-variables

6
推荐指数
1
解决办法
2720
查看次数

标签 统计

environment-variables ×1

python ×1

subprocess ×1