天天看點

C#中調用python

為了記錄自己的學習成果,防止遺忘,同時為了幫助在C#學習過程中遇到同樣問題的同志們,是以将原版代碼奉上!!!

開發環境:vs2015

準備工作:

  1. 下載下傳并安裝Ironpython
  2. 建立控制台應用程式
  3. 添加文本檔案,并命名為test.py
  4. 添加引用:引用IronPython.dll,Microsoft.Scripting.dll 兩個dll檔案

控制台程式代碼:

using System;

using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
//引用需要的命名空間

using IronPython.Hosting;
using Microsoft.Scripting.Hosting;
namespace ConsoleApplication3
{
    class Program
    {
        static void Main(string[] args)
        {
            /*執行bin目錄下test.py*/
            /*ScriptEngine pyEngine = Python.CreateEngine();//建立Python解釋器對象
            dynamic py = pyEngine.ExecuteFile(@"test.py");//讀取腳本檔案
            int[] array = new int[9] { 9, 3, 5, 7, 2, 1, 3, 6, 8 };
            string reStr = py.main(array);//調用腳本檔案中對應的函數
            Console.WriteLine(reStr);
            Console.ReadKey();*/
            ScriptRuntime pyRunTime = Python.CreateRuntime();
            dynamic obj = pyRunTime.UseFile("test.py");
            Console.WriteLine(obj.welcome(10));
            Console.ReadKey();
        }
    }
}
python程式:
import math
def welcome(value):
    return  math.pi + value
#print(welcome(100))           

複制

運作前注意:點選test.py 将複制到輸出目錄 設定為始終複制

運作:直接按F5

執行效果:

C#中調用python