我相信在环境稍有修改的情况下运行外部命令是很常见的情况。这就是我倾向于这样做的方式:
import subprocess, os my_env = os.environ my_env["PATH"] = "/usr/sbin:/sbin:" + my_env["PATH"] subprocess.Popen(my_command, env=my_env)
我感觉到有更好的办法了。看起来还好吗?
我认为os.environ.copy()如果你不打算为当前过程修改os.environ会更好:
os.environ.copy()
os.environ
import subprocess, os my_env = os.environ.copy() my_env["PATH"] = "/usr/sbin:/sbin:" + my_env["PATH"] subprocess.Popen(my_command, env=my_env)