继我之前的问题之后,是否有可能制作一个持久更改Windows环境变量的Python脚本?
一旦python解释器终止,对os.environ的更改不会保留.如果我在UNIX上编写脚本,我可能会这样做:
set foo=`myscript.py`
但是,唉,cmd.exe没有任何像sh的后退行为一样的东西.我已经看到了一个非常冗长的解决方案......它确实非常可靠,我们可以改进这个:
for /f "tokens=1* delims=" %%a in ('python ..\myscript.py') do set path=%path%;%%a
当然,微软的头脑有一个比这更好的解决方案!
注意:这个问题的完全重复.
您可能想尝试由Mark Hammond开发的Python Win32 Extensions,它包含在ActivePython中(或者可以单独安装).您可以在Hammond和Robinson的书中学习如何执行许多与Windows相关的任务.
使用PyWin32访问Windows COM对象,Python程序可以使用环境属性的的WScript.Shell
对象-环境变量的集合.