3

Python スクリプトを C# にインポートするために、初めて Ironpython を使用しています。「numpy という名前のモジュールがありません」というエラーが表示されますが、その理由はわかりません。モジュールのパスをPythonスクリプトに追加する必要があることを読みました。これは私のpythonスクリプトです:

import numpy as np
import sys
sys.path.append(r"C:\Users\abc\CSharp\PythonScriptExecution1\packages\IronPython.2.7.9\lib")
sys.path.append(r"C:\Users\abc\PycharmProjects\untitled3\venv\Lib")
sum = np.sum([0.5, 1.5])
print(sum)

2 番目のパスは、python.exe の Pycharm でプロジェクト インタープリターとしても使用されるパスです。

私のC#コードはこれです:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PythonScriptExecution2
{
    class Program
    {
        static void Main(string[] args)
        {
            Microsoft.Scripting.Hosting.ScriptEngine pythonEngine =
                IronPython.Hosting.Python.CreateEngine();
            // We execute this script from Visual Studio 
            // so the program will be executed from bin\Debug or bin\Release
            Microsoft.Scripting.Hosting.ScriptSource pythonScript =
                pythonEngine.CreateScriptSourceFromFile("C:/Users/abc/PycharmProjects/untitled3/test.py");
            pythonScript.Execute();
        }
    }
}

Pycharm で Python スクリプトを実行すると問題なく動作しますが、C# にインポートすると上記のエラーが発生します。誰かが正しいパスを設定する方法を教えてくれますか?

編集:うまくいかない場合、C# で Python スクリプトを実行する他の方法を知っている人はいますか?

4

1 に答える 1