Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich Python-Skripte in C# ausführen und deren Ausgabe erfassen?

Wie kann ich Python-Skripte in C# ausführen und deren Ausgabe erfassen?

Susan Sarandon
Freigeben: 2024-12-09 15:41:12
Original
739 Leute haben es durchsucht

How Can I Run Python Scripts from C# and Capture Their Output?

Ausführen von Python-Skripten aus C#: Ein umfassender Leitfaden

Im Bereich der intersprachlichen Zusammenarbeit stellt sich die Frage der Ausführung von Python-Skripten aus C# kommt oft vor. Trotz der Versuche, prägnante Antworten zu geben, können die Details manchmal schwer zu fassen sein. Lassen Sie uns in die Einzelheiten eintauchen und diesen Prozess klären.

Die größte Herausforderung besteht darin, die Befehlszeilenargumente für die Python-Ausführung zu erstellen. Zunächst müssen Sie den vollständigen Pfad zur ausführbaren Python-Datei als Dateinamen in ProcessStartInfo angeben. Stellen Sie als Nächstes die Zeichenfolge „Argumente“ zusammen, indem Sie sowohl den Skriptpfad als auch die zu verarbeitende Datei einbeziehen.

Um die Ausgabe des Python-Skripts zu erfassen, setzen Sie UseShellExecute auf „false“. Dies ermöglicht auch die Verwendung von RedirectStandardOutput.

Angepasster Code:

private void run_cmd(string cmd, string args)
{
    ProcessStartInfo start = new ProcessStartInfo();
    start.FileName = "my/full/path/to/python.exe";
    start.Arguments = string.Format("{0} {1}", cmd, args);
    start.UseShellExecute = false;
    start.RedirectStandardOutput = true;
    using (Process process = Process.Start(start))
    {
        using (StreamReader reader = process.StandardOutput)
        {
            string result = reader.ReadToEnd();
            Console.Write(result);
        }
    }
}
Nach dem Login kopieren

In diesem Code zeigt die FileName-Eigenschaft auf die tatsächliche ausführbare Python-Datei. Die Arguments-Zeichenfolge verkettet den Skriptpfad und die Datei, die vom Python-Code gelesen werden soll.

Weitere Erläuterungen:

  • Anstatt den ausführbaren Python-Pfad fest zu codieren, Erwägen Sie die Verwendung eines global installierten Python-Interpreters.
  • Das Format der Argumentzeichenfolge kann je nach dem spezifischen Python-Skript, das Sie verwenden, variieren läuft. Weitere Informationen finden Sie in der Python-Dokumentation.
  • Dieser Ansatz macht IronPython oder andere externe Tools überflüssig. Es ermöglicht die direkte Kommunikation zwischen C# und Python, erfasst die Ausgabe und ermöglicht eine kontinuierliche Interaktion.

Das obige ist der detaillierte Inhalt vonWie kann ich Python-Skripte in C# ausführen und deren Ausgabe erfassen?. 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