2017-09-27 4 views
0

Ich führe die unten stehende Codezeile auf meinem Raspberry Pi 3 aus und erwarte eine Ausgabe, die dem Benutzer angezeigt wird. (Dies ist nur ein Test in meiner Lernkurve)subprocess.check_output zeigt keine Ausgabe an

#test.py 
import subprocess 
output = subprocess.check_output("python test2.py", shell=True) 

wo test2.py (im gleichen Verzeichnis) den folgenden Code hat.

#test2.py 
print("myTest") 

Der Code läuft jedoch hinter den Kulissen, aber keine Ausgabe wird auf dem Bildschirm angezeigt. Ich sehe keine myTest auf dem Bildschirm.

+0

versuchen 'print (output)'. 'check_output' leitet weiter, druckt nicht –

Antwort

2

subprocess.check_output wird die Ausgabe Ihres print Befehl von test2.py verbrauchen Sie brauchen nur etwas mit dem Ausgang zu tun: print(output).

0

aus Python-Dokumentation:

subprocess.check_output(args, *, stdin=None, stderr=None, shell=False, 
universal_newlines=False) 

Run-Befehl mit Argumenten und dessen Ausgang als Byte-String zurück.

so müssen Sie die Ausgabe in der test.py, um drucken, die auf Sie sehen

Shell