这可能是一个愚蠢的问题。我有用Python调用子进程的代码。要使它工作并找到程序,我需要在我的Mac TEST__LIB_PATH上设置一个环境变量。
subprocess.call(["find_info",
image,
json_file])
在Python中有没有办法我可以导入这个环境变量而不必全局设置它?
答案 0 :(得分:2)
call
采用关键字参数env
,该参数将映射用作命令的环境。当前环境在os.environ
;你可以用
subprocess.call(["find_info", image, json_file],
env=dict(TEST__LIB_PATH="/path/requried/for/test",
**os.environ))
答案 1 :(得分:1)
您可以使用os.environ
访问环境变量:
import os
print(os.environ['TEST__LIB_PATH'])
os.environ
也有get()
方法:
os.environ.get('TEST__LIB_PATH')
编辑:这里是指向the docs
的链接