Heim  >  Artikel  >  Backend-Entwicklung  >  Wie kann ich Python-Skripte mit Argumenten aus einem anderen Python-Skript ausführen?

Wie kann ich Python-Skripte mit Argumenten aus einem anderen Python-Skript ausführen?

DDD
DDDOriginal
2024-11-02 07:46:29745Durchsuche

How Can I Execute Python Scripts with Arguments from Another Python Script?

Ausführen von Python-Skripten aus anderen Python-Skripten mit Argumenten

In Python besteht häufig die Notwendigkeit, ein externes Skript mit bestimmten Parametern oder Argumenten auszuführen . Während die Stack Overflow-Frage 1186789 dieses Problem teilweise durch den Aufruf einer einzelnen Funktion behebt, ist sie nicht auf die Ausführung vollständiger Skripte ausgerichtet. Darüber hinaus ermöglicht der in der Frage erwähnte Execfile-Ansatz keine ordnungsgemäße Variablenübergabe, da sys.argv im Zielskript unverändert bleibt.

Um dies zu beheben, wird die Verwendung von os.system empfohlen:

<code class="python">import os

os.system("script2.py 1")</code>

Die Funktion os.system bietet eine praktische Möglichkeit, einen externen Befehl aus einem Python-Skript heraus auszuführen. Im obigen Beispiel wird das Skript script2.py mit dem Argument 1 gestartet.

Der Hauptunterschied zwischen os.system und execfile liegt in ihren jeweiligen Kontexten. execfile führt Code innerhalb der aktuellen Ausführungsumgebung aus, wodurch verhindert wird, dass sys.argv aktualisiert wird. Umgekehrt erstellt os.system einen neuen Prozess zum Ausführen des Skripts und stellt so sicher, dass die beabsichtigten Argumente korrekt übergeben werden.

Durch den Einsatz von os.system können Sie externe Skripts nahtlos mit angegebenen Parametern ausführen, ohne dass Änderungen daran erforderlich sind Zielskript.

Das obige ist der detaillierte Inhalt vonWie kann ich Python-Skripte mit Argumenten aus einem anderen Python-Skript ausführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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