In Python gibt es beispielsweise viele Subprozessmodule in Python.run (), subprozess.Popen (), subprozess.Call (), Subprozess.check_call (), subprozess.check_output () usw. Hier werden wir aufklären, was der Subprozess ist.check_output (), was seine Funktion ist und wie es in einem Python -Programm verwendet wird.
Die Syntax von Subprozess.check_output ()
Jedes Python -Programm verfügt über Standardkanäle für den Prozess oder den Unterprozess. Diese Kanäle werden von Call () gestartet und an die Eingabe und Ausgabe des übergeordneten Programms gebunden. Mit anderen Worten, der Befehl der Ausgabe des aufrufenden Programms kann nicht erfasst werden. Daher wird das Subprozess -Modul check_output () in Python verwendet, um die Ausgabe des aufrufenden Programms für die spätere Verarbeitung zu erfassen. Die Syntax von Subprozess.check_output () ist wie folgt:
Subprozess.check_output (args, *, stdin = keine, stderr = keine, Shell = false, Universal_newlines = false)Das Argument der Subprozesse "Args".check_output bezieht sich auf den Befehl, der ausgeführt werden soll. Mehrere Befehle können als String an das Argument "Args" übergeben werden. Sie müssen jedoch durch ein Semikolon getrennt werden.'Das Stdin -Argument bezieht sich auf den Wert des Standardeingangsstroms, der ein Rohr übergeben werden muss. Das STDOut -Argument bezieht sich auf den Wert der aus dem Standardausgangsstrom erzeugten Ausgabe. Das Stderr -Argument bezieht sich auf den aus dem Standardfehlerstrom generierten Fehlerwert.
Das Shell -Argument bezieht sich auf den booleschen Parameter, der nur dann über eine neue Shell -Umgebung ausgeführt wird, wenn er wahr ist. Das letzte Argument, Universal_Newlines. Wenn das Argument der Universal_Newlines wahr ist, wird die Datei, die STDOut und Stderr enthält, im Universal Newline -Modus geöffnet. Die Ausgabe oder die Rückgabe des Subprozesses.check_output () ist der Code des Befehls.
Hier ist ein Beispiel, damit Sie verstehen, wie das Modul check_output () die Ausgabe des Anrufprogramms erfasst.
Beispiel 1:
In diesem einfachen Beispiel wird der Ausgabescode des Befehls erstellt.
Subprozess importierenHier ist die Ausgabe des angegebenen Beispiels:
Beispiel 2:
In diesem Beispiel wird die Ausgabe des Anrufprogramms erzeugt.
Subprozess importierenHier ist die Ausgabe des obigen Code:
Beispiel 3:
In diesem Beispiel wird gezeigt, wie externe Programme jeder Programmiersprache wie C, C ++, Java usw., werden in ein Python -Programm mit Subprozess in Python aufgenommen und wie check_output () die Ausgabe dieser externen Programme ausführt.
Dies ist ein C -Programm:
int main ()Unten ist das C ++ - Programm
#enthaltenDies ist das Java -Programm
Klasse HelloWorldHier ist das Python -Programm, das die oben genannten Programme mit Subprozess in Python ausführt
Subprozess importierenHier ist die Ausgabe des obigen Programms:
Notiz: Obwohl das Subprozessmodul in Python OS unabhängig ist, müssen diese Befehle vorzugsweise in der Linux -Umgebung ausgeführt werden. Darüber hinaus kann die Shell = True zu einer Sicherheitsrisiko werden, wenn eine nicht vertrauenswürdige Eingabe kombiniert wird, wie in der Python -Dokumentation definiert.
Abschluss:
In diesem Artikel geht es um den Unterprozess.check_output () Modul des Subprozesses in Python. Hier haben wir eine kurze Diskussion über Subprozesse in Python und erläutern dann die Verwendung des Subprozesses.check_output (). Lassen Sie uns eine kurze Zusammenfassung des Artikels haben. Der Subprozess in Python erstellt ein neues Programm, um einen neuen Code darin auszuführen. Dadurch kann der Benutzer eine neue Anwendung innerhalb des aktuell ausführenden Python -Programms erstellen. In Python gibt es viele Unterprogrammemodule, und einige von ihnen sind Subprozess.Call (), Subprozess.Popen (), subprozess.check_call (), subprozess.check_output ().
Der Subprozess.check_output () wird verwendet, um die Ausgabe des aufrufenden Programms in Python zu erhalten. Es hat 5 Argumente; Args, Stdin, Stderr, Shell, Universal_Newlines. Das Argument -Argument enthält die Befehle, die als Zeichenfolge übergeben werden sollen. Die Stdin, Stdout und STDDERR liefern den Eingangs-, Ausgangs- und Fehlerwert aus dem Standardstrom. Die Shell und Universal_Newlines sind die booleschen Parameter, die nur die Befehle ausführen, wenn der Wert des Arguments wahr ist. Der Rückgabecode des Befehls wird als Ausgabe des Subprozesses angegeben.check_ouput () Funktion. Eine Byte -Zeichenfolge wird als Ausgabe zurückgegeben, wenn der Code Null ist. Sonst wird genannt.