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

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

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-02 15:54:12608ブラウズ

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

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

C# では、ネイティブの相互運用性アプローチを使用して Python スクリプトを実行できます。 IronPython には便利なオプションが用意されていますが、必ずしも必要なわけではありません。

プロセスベースの実行

C# から Python スクリプトを実行するには、次の手順に従います。

  1. Python 実行可能ファイル (python.exe) へのフルパスを指定して ProcessStartInfo オブジェクトを作成します。 FileName.
  2. スクリプト パスと追加パラメータを組み合わせて Arguments 文字列を構築します。
  3. UseShellExecute を false に設定します。
  4. Python の出力をキャプチャするには、RedirectStandardOutput を true に設定します。 script.
  5. を使用してプロセスを開始しますProcess.Start(start).
  6. StreamReader を使用して、スクリプトの標準出力から出力を読み取ります。

これは run_cmd の実装例です。メソッド:

private void run_cmd(string script, string args)
{
    ProcessStartInfo start = new ProcessStartInfo();
    start.FileName = "my/full/path/to/python.exe";
    start.Arguments = string.Format("{0} {1}", script, 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);
        }
    }
}

考慮事項

  • この方法には、IronPython やその他の追加ツールのインストールは含まれません。
  • Python 実行可能ファイルが正しく指定されています。
  • スクリプトのインタープリターとパスは Python ランタイムで適切に構成されている必要があります。環境。

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

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