2013-03-01 11 views

Antwort

24

sollten folgende Arbeiten:

myinput = open('myinput.in') 
myoutput = open('myoutput.out', 'w') 
p = subprocess.Popen('myprogram.exe', stdin=myinput, stdout=myoutput) 
p.wait() 
myoutput.flush() 
+0

Das sieht in der Nähe, was ich brauche. Wie erkenne ich, ob Fehler aufgetreten sind? –

+0

Nevermind. stderr = subprocess.PIPE, dann stderr: print error –

+0

In der Zeile 'myoutput = open ('myoutput.out'. 'w')' Parameter sollten durch ein ',', nicht ein '.' getrennt werden. – flagg19

-5

öffnet eine Datei in subprocess. Es ist ein blockierender Anruf. Daher wird die Steuerung nicht zur nächsten Zeile gehen, bis die Datei geöffnet ist.

ss=subprocess.Popen(FileName,shell=True) 
ss.communicate()