ホームページ >バックエンド開発 >Python チュートリアル >シェルを使用せずに C# から Python スクリプトを正常に実行するにはどうすればよいですか?

シェルを使用せずに C# から Python スクリプトを正常に実行するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-12-25 06:33:20595ブラウズ

How to Successfully Run a Python Script from C# Without Using the Shell?

C# から Python スクリプトを実行する方法

C# アプリケーション内から Python スクリプトを呼び出すことを目的としています。このスクリプトには、単純なファイルの読み取りと印刷の関数が含まれています。

最初の試みでは、コマンド ライン経由で Python スクリプトを呼び出す必要がありましたが、UseShellExecute = false を使用すると、実行が正常に完了できませんでした。

修正するにはこの問題では、

  • UseShellExecute = false を設定して、 shell.
  • Python 実行可能ファイルへの完全パスを FileName として指定します。
  • スクリプト名と読み取られるファイルの両方を含むように Arguments 文字列を構築します。

修正されたコードは次のとおりです:

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

この変更により、Python を実行できるようになります。 C# アプリケーションからスクリプトを作成し、その出力をキャプチャします。

以上がシェルを使用せずに C# から Python スクリプトを正常に実行するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。