Rumah >pembangunan bahagian belakang >C++ >Bagaimana saya boleh menjalankan skrip python dari C# tanpa menggunakan 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
. 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
<code class="language-csharp">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); } } }</code>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!