Рекомендованный способ для вызова подпроцесса и манипулирования его стандартным выводом и стандартной ошибкой состоит в использовании модуля подпроцесс .Вот как можно подавить как стандартный вывод, так и стандартный вывод:
import subprocess
# New process, connected to the Python interpreter through pipes:
prog = subprocess.Popen('ls', stdout=subprocess.PIPE, stderr=subprocess.PIPE)
prog.communicate() # Returns (stdoutdata, stderrdata): stdout and stderr are ignored, here
if prog.returncode:
raise Exception('program returned error code {0}'.format(prog.returncode))
Если вы хотите, чтобы подпроцесс печатал на стандартный вывод, вы можете просто удалить stdout=…
.