編程:C#調用Python模組

來源:互聯網
上載者:User

標籤:

  

   當下,C#與Python都是比較熱門的電腦程式設計語言,他們各有優缺點,如果能讓他們互相配合工作,那是多麼美好的事情,今天我來講解一下如何利用C#來調用Python。

  如果讓C#支援調用Python模組,我們首先需要安裝一些擴充,這裡推薦使用IronPython庫。

  第一步,我們需要下載IronPython庫的安裝包,這裡請大家移步官網 http://ironpython.codeplex.com/ ,下載並安裝相關庫檔案。

                  

  第二步,我們建立一個C#控制台測試專案,並將IronPython安裝目錄中的如下DLL檔案添加進項目引用。

                     

   第三步,我們分別編寫C#代碼,並添加Python代碼檔案到項目中,代碼如下。

    C#代碼部分

 1 using System; 2 using IronPython.Hosting; //匯入IronPython庫檔案 3 using Microsoft.Scripting.Hosting; //匯入微軟指令碼解釋庫檔案 4  5  6 namespace ConsoleApplication1 7 { 8     class Program 9     {10         static void Main(string[] args)11         {12             ScriptRuntime pyRuntime = Python.CreateRuntime(); //建立一下運行環境13             dynamic obj=pyRuntime.UseFile("debug.py"); //調用一個Python檔案14             int  num1, num2;15             Console.Write("Num1:");16             num1 = Convert.ToInt32(Console.ReadLine());17             Console.Write("Num2:");18             num2 = Convert.ToInt32(Console.ReadLine());19             int sum = obj.add(num1, num2); //調用Python檔案中的求和函數20             Console.Write("Sum:");21             Console.WriteLine(sum);22         }23     }24 }

   Python代碼部分

def add(num1,num2):return num1+num2;

  編譯時間需要修改工程中的Python檔案屬性如,否則會報出檔案無法定位的錯誤,運行結果如下右圖。

                                

  通過上面的實驗過程,大家可以很容易的使用C#調用Python檔案,但是不知道大家是否會和我產生相同的疑惑,如何把C#的可執行程式與Python檔案打包呢? 如果是簡單的壓縮,可能會缺失運行所需的庫檔案,如果你也對此有疑問,請留意部落格的下一篇文章:利用Visual Studio尋找程式必要的運行庫檔案。 

編程:C#調用Python模組

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.