【发布时间】:2016-04-11 12:49:49
【问题描述】:
我正在尝试从 python 程序启动一个 exe 文件(exe 文件是使用 Visual Studio 编译的 c++ 项目的输出)。在这个c++项目的属性(配置->属性->调试->环境)中
(PATH = %PATH%;lib\testfolder1;lib\testfolder2)
是给定的。
有没有办法将路径环境变量设置为
- PATH = %PATH%
- lib\testfolder1
- lib\testfolder2
在 python 程序中?
提前感谢您的重播
【问题讨论】:
-
Path 是一个操作系统环境变量,更改它可能会暂时(直到下次启动)损坏多个程序或库的访问路径。如果只在程序运行时需要修改路径,最好先保存一份原路径,然后加法修改,这样就可以在退出程序前设置成原来的值。 %PATH% 表示路径变量本身,是操作系统级别的一种附加设置路径变量的方式。如:如果路径为 C:\;C:\d1,PATH=%PATH%;C:\d2 等同于输入 PATH = C:\;C:\d1;C:\d2
-
感谢 Lhsan 的详细解释。我之前有误解 % PATH% 。现在可以了
-
如果您正在启动一个可执行文件,请使用
subprocess.Popen,或subprocess.check_output等高级函数之一,并使用其env选项将修改后的环境传递给子进程.例如:environ = os.environ.copy();environ['PATH'] += os.pathsep + os.pathsep.join([r'lib\testfolder1', r'lib\testfolder2']);p = subprocess.Popen([exepath, arg1, arg2, ...], env=environ)。