Я считаю, что запуск внешней команды со слегка измененной средой - очень распространенный случай. Вот как я это делаю:
import subprocess, os
my_env = os.environ
my_env["PATH"] = "/usr/sbin:/sbin:" + my_env["PATH"]
subprocess.Popen(my_command, env=my_env)
У меня есть ощущение, что есть лучший способ; это выглядит хорошо?