我正在尝试使用 python 向我的 Windows 机器添加一个环境变量,代码类似于:
import os
os.environ["TONY"] = "C:\\"
或者
import os
os.putenv["TONY", "C:\\"]
但我没有看到系统环境变量中的条目。是因为在 cmd 中键入“set”时的变量列表是从机器注册表中读取的吗?
有没有办法在 Windows 上添加一个变量,以便它显示在系统变量中?
我正在尝试使用 python 向我的 Windows 机器添加一个环境变量,代码类似于:
import os
os.environ["TONY"] = "C:\\"
或者
import os
os.putenv["TONY", "C:\\"]
但我没有看到系统环境变量中的条目。是因为在 cmd 中键入“set”时的变量列表是从机器注册表中读取的吗?
有没有办法在 Windows 上添加一个变量,以便它显示在系统变量中?
简短的回答:Python 无法以固定的方式编辑环境变量。但是,如果您只想在临时修改的环境中运行某些东西,您可以使用 subprocess 模块执行此操作:
import os
from subprocess import Popen
myEnv = dict(os.environ)
myEnv['newKey'] = 'newVal'
shellCmd = Popen(['sh', 'someScript.sh'], env=myEnv)
(shellOut, shellErr) = shellCmd.communicate()