Как использовать управление буферизацией вывода? - PullRequest
1 голос
/ 13 января 2012

Мне нужно сохранить вывод в Python.

Пример:

import os

ob_start();
os.system( 'c:\files\file.exe' );
var = ob_content();
ob_close();
print "message:\n\t" + var

1 Ответ

3 голосов
/ 13 января 2012

Вам необходимо использовать модуль subprocess и передавать stdout и stderr по каналам обратно в ваш вызывающий процесс, используя объект Popen (обязательно прочитайте документы, по которым удобнометоды, которые вы не должны использовать с трубами на stdout или stderr).os.system - это довольно одномерный молот, и, хотя его легко использовать, он просто не будет делать то, что вы хотите.

...