Maison > développement back-end > Tutoriel Python > Comment puis-je exécuter des scripts Python à partir de C# et capturer leur sortie ?

Comment puis-je exécuter des scripts Python à partir de C# et capturer leur sortie ?

Susan Sarandon
Libérer: 2024-12-09 15:41:12
original
740 Les gens l'ont consulté

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

Exécuter des scripts Python à partir de C# : un guide complet

Dans le domaine de la coopération inter-langages, la question de l'exécution de scripts Python à partir de C# se pose souvent. Malgré les tentatives visant à fournir des réponses concises, les détails peuvent parfois rester insaisissables. Entrons dans les détails et clarifions ce processus.

Le principal défi réside dans la création des arguments de ligne de commande pour l'exécution de Python. Pour commencer, vous devez fournir le chemin complet de l'exécutable Python en tant que FileName dans ProcessStartInfo. Ensuite, assemblez la chaîne Arguments en incorporant à la fois le chemin du script et le fichier à traiter.

Pour capturer la sortie du script Python, définissez UseShellExecute sur false. Cela permet également l'utilisation de RedirectStandardOutput.

Code ajusté :

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);
        }
    }
}
Copier après la connexion

Dans ce code, la propriété FileName pointe vers l'exécutable Python réel. La chaîne Arguments concatène le chemin du script et le fichier à lire par le code Python.

Clarifications supplémentaires :

  • Au lieu de coder en dur le chemin de l'exécutable Python, envisagez d'utiliser un interpréteur Python installé globalement.
  • Le format de la chaîne Arguments peut varier en fonction du script Python spécifique que vous courent. Consultez la documentation Python pour plus de détails.
  • Cette approche élimine le besoin d'IronPython ou d'autres outils externes. Il permet une communication directe entre C# et Python, capturant le résultat et permettant une interaction continue.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal