Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Melaksanakan Skrip Python daripada C# Tanpa Perpustakaan Luaran?

Bagaimanakah Saya Boleh Melaksanakan Skrip Python daripada C# Tanpa Perpustakaan Luaran?

Linda Hamilton
Linda Hamiltonasal
2024-12-07 09:57:12729semak imbas

How Can I Execute Python Scripts from C# Without External Libraries?

Menjalankan Skrip Python daripada C

Ramai pembangun telah menghadapi cabaran untuk melaksanakan skrip Python dalam aplikasi C# mereka. Walaupun penyelesaian seperti IronPython wujud, artikel ini menyediakan pendekatan yang ringkas dan berkesan untuk mencapai tugas ini tanpa menggunakan perpustakaan luaran.

Kunci untuk menjalankan skrip Python daripada C# adalah untuk memahami cara pelaksanaan baris arahan berfungsi. Apabila anda melaksanakan perintah daripada baris arahan, anda menentukan boleh laku (cth., python.exe) diikuti dengan fail skrip dan sebarang hujah yang diperlukan.

Dalam C#, anda boleh menggunakan kelas ProcessStartInfo untuk menentukan arahan -garisan untuk dilaksanakan. Berikut ialah versi kod anda yang dikemas kini dengan betul menetapkan UseShellExecute kepada false dan membina rentetan Argumen menggunakan rentetan.Format:

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);
         }
     }
}

Kod ini memastikan laluan penuh ke python.exe digunakan dan memformatkan argumen dengan betul untuk memasukkan kedua-dua nama fail skrip dan fail yang akan dibaca.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Skrip Python daripada C# Tanpa Perpustakaan Luaran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn