Ich benutze Python subprocess
, um ein Python-Skript (nennen wir es script2.py
), und dieses Skript druckt Informationen zu stdout
, die mit PIPE
umgeleitet wird. Problem ist, dass script2.py
stoppt Drucken von Informationen, aber es läuft weiter im Hintergrund. Ich möchte diesen Zustand erkennen (wenn nichts in stdout
geschrieben wird). Gibt es einen Weg dazu?Wie erkennt man, ob Daten in stdout vorhanden sind?
kann ich dieses Verhalten simulieren mit folgenden:
script2.py
for i in range(0,1000):
if i < 500:
print "HUEHUE"
Next 500 Iterationen nichts passieren wird, und das ist, was ich, um zu erfassen, müssen Sie das Skript erneut aus.
Warum Subprozess verwenden, wenn Sie das Skript importieren und ausführen könnten? –
@ cricket_007 das ist die ideale Lösung, manchmal arbeiten Sie mit Skripten, die Sie nicht geschrieben haben, und es ist einfacher, mit der Ausgabe umzugehen und dann mit dem Skript zu interagieren. Wenn er es selbst geschrieben hat, stimme ich dir vollkommen zu. – bravosierra99
Leider wurde 'script2.py' nicht von mir geschrieben, mir wurde nur das Skript gegeben, das' script2.py' ausführt, um den "Pause" -Zustand zu erkennen. –