現在のプリントアウトとは何ですか?異なる動作をするPythonのバージョンを実行している場合を除き、呼び出しの戻り状態がバージョンに割り当てられている唯一のものであるように見えます。
引数を指定してコマンドを実行します。コマンドが完了するまで待ってから、 returncode属性を返します。
からdocstring for subprocess.call
私はsubprocess.callはそれがSTDOUTに出力します印刷し、犯人である賭けます。そのprintステートメントがない場合でも、メソッドの働きにより、サブプロセス呼び出しのすべての出力が表示されます。実際の出力をつかむために
、あなたはより多くの
lines = subprocess.Popen([program, '-i'], stdout=subprocess.PIPE).communicate()[0]
print lines.splitlines()[0] + '\n'
ようcommunicate
呼び出しはタプル(stdoutdata, stderrdata)
を返す何かをしたい場合があります。 docsで詳細を読むことができます。他のすべては自明でなければなりません。
まだすべての行を印刷しています:( – kamal
@kamalもちろん動作しません。\ nは改行ではなく\ nで分割しようとします。\ nは\とnの2文字を意味するからです。 Pythonでの引用の詳細については、[documentation](http://docs.python.org/reference/lexical_analysis.html#strings)を参照してください。私の答えを見てください – radious
@radious ..それはまったく違う 'len( '\ n')== 1' – eduffy