Rumah > pembangunan bahagian belakang > C++ > Bagaimana saya boleh menjalankan skrip python dari C# tanpa menggunakan Ironpython?

Bagaimana saya boleh menjalankan skrip python dari C# tanpa menggunakan Ironpython?

Mary-Kate Olsen
Lepaskan: 2025-01-30 09:01:10
asal
418 orang telah melayarinya

How Can I Run Python Scripts from C# Without Using IronPython?

melaksanakan skrip python secara langsung dari C#

Banyak pemaju mencari kaedah yang cekap untuk menjalankan skrip Python dalam aplikasi C# tanpa menggunakan IronPython. Artikel ini menjelaskan bagaimana untuk mencapai ini dengan berkesan.

Pendekatan biasa melibatkan penggunaan kelas

dalam C#. Walau bagaimanapun, percubaan terdahulu sering gagal kerana konfigurasi yang salah dari objek Process. ProcessStartInfo

Isu utama terletak pada harta

. Menetapkan UseShellExecute memerlukan spesifikasi eksplisit jalur penuh penterjemah Python dalam harta UseShellExecute = false dan pembinaan yang berhati -hati dari rentetan FileName untuk memasukkan kedua -dua skrip Python dan sebarang argumen yang diperlukan. Tambahan pula, untuk menangkap output skrip, Arguments mesti ditetapkan ke RedirectStandardOutput. true

inilah coretan kod C# yang diperbetulkan yang menunjukkan pendekatan ini:

private void runPythonScript(string scriptPath, string arguments)
{
    ProcessStartInfo startInfo = new ProcessStartInfo();
    startInfo.FileName = @"C:\Path\To\Your\Python\python.exe"; // Replace with your Python executable path
    startInfo.Arguments = $"\"{scriptPath}\" {arguments}";
    startInfo.UseShellExecute = false;
    startInfo.RedirectStandardOutput = true;
    startInfo.CreateNoWindow = true; //Optional: Prevents a console window from appearing

    using (Process process = Process.Start(startInfo))
    {
        using (StreamReader reader = process.StandardOutput)
        {
            string result = reader.ReadToEnd();
            Console.WriteLine(result);
        }
    }
}
Salin selepas log masuk
Kaedah yang lebih baik ini boleh dilaksanakan skrip Python dari C#, menangkap output mereka dan membolehkan panggilan berulang, menjadikannya sesuai untuk interaksi C#-python yang rumit. Ingatlah untuk menggantikan

dengan jalan sebenar ke Python anda boleh dilaksanakan. Penambahan "C:PathToYourPythonpython.exe" adalah pilihan tetapi disyorkan untuk mengelakkan tetingkap konsol python berasingan dari pembukaan. CreateNoWindow = true

Atas ialah kandungan terperinci Bagaimana saya boleh menjalankan skrip python dari C# tanpa menggunakan Ironpython?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan