Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich die Ausgabe eines Unterprozesses in eine Datei in Python umleiten?

Wie kann ich die Ausgabe eines Unterprozesses in eine Datei in Python umleiten?

Linda Hamilton
Freigeben: 2024-11-13 15:16:02
Original
741 Leute haben es durchsucht

How can I redirect subprocess output to a file in Python?

Ausgabe in Python mit Unterprozess umleiten

In Python kann die Umleitung der Ausgabe in eine Datei mithilfe eines Unterprozesses über das stdout-Argument beim Aufrufen eines Unterprozesses erfolgen .run().

Betrachten Sie den folgenden Befehlszeilenbefehl:

cat file1 Datei2 Datei3 > myfile

Dieser Befehl verkettet den Inhalt der Dateien „file1“, „file2“ und „file3“ und leitet die Ausgabe an die Datei „myfile“ weiter.

Um eine analoge Operation in Python auszuführen Führen Sie bei Verwendung eines Unterprozesses die folgenden Schritte aus:

  1. Erstellen Sie eine Liste mit Argumenten für den Unterprozessaufruf, einschließlich des Befehls (z. B. ['cat']) und die Eingabedateinamen.
  2. Öffnen Sie die Datei, in die Sie die Ausgabe umleiten möchten (in diesem Fall „myfile“), im Schreibmodus.
  3. Unterprozess aufrufen. run() mit der Liste der Argumente und Angabe des Open-File-Handles als stdout-Parameter.

Beispielcode (Python 3.5 ):

import subprocess

# Create a list of input file names
input_files = ['file1', 'file2', 'file3']

# Create the command argument list
my_cmd = ['cat'] + input_files

# Open the output file in write mode
with open('myfile', "w") as outfile:
    # Run the subprocess and redirect its output to the file
    subprocess.run(my_cmd, stdout=outfile)
Nach dem Login kopieren

Mit diesem Ansatz können Sie die Ausgabe eines Unterprozesses effektiv in eine bestimmte Datei umleiten.

Das obige ist der detaillierte Inhalt vonWie kann ich die Ausgabe eines Unterprozesses in eine Datei in Python umleiten?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage