起個頭,技術性文章應該言簡意賅(因我看到外國回答問題都是可以一句代碼解決的,絕不會寫第二句),實現功能無誤再貼出文章。
首先我不用 IronPython來寫這個.py文件,因為我有Pycharm,而且ipy需要配置某些環境,且代碼沒有提示,不推薦。
直入主題:
1.安裝IronPython並在其路徑下找到找到這兩個dll,並復制到代碼對應路徑下。
2.引用,添加引用,在剛才的路徑找到即可。
3.py寫個簡單的函數,簡單能運行,函數有個返回值就行。
4.項目中添加新文件夾,右鍵打開文件路徑,將.py文件復制進去。
5.引用空間。
using IronPython.Hosting; using Microsoft.Scripting.Hosting;
6.我這里創建的是窗體的一個項目。其中這兩行是對python的鏈接,創建和配置環境,obj就是這個.py文件的實例了。
ScriptRuntime pyRunTime = Python.CreateRuntime(); dynamic obj = pyRunTime.UseFile(pyPath+"IronPy_Test.py");
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using IronPython.Hosting; using Microsoft.Scripting.Hosting; namespace WinForm_ipy { public partial class Form1 : Form { //這是.py文件的路徑 string pyPath = "C:\\Users\\hongheng.mei\\Desktop\\InronPy\\WinForm_ipy\\WinForm_ipy\\PythonFiles\\"; public Form1() { InitializeComponent(); } private void btnOpen_Click(object sender, EventArgs e) { ScriptRuntime pyRunTime = Python.CreateRuntime(); dynamic obj = pyRunTime.UseFile(pyPath+"IronPy_Test.py"); var value = obj.Hello(); tbxDisplay.Text = value; MessageBox.Show(value); } } }
7.關於有些人要設置.py文件屬性為始終復制,而我是默認的不復制也能正常運行,這我沒弄清楚。
8.最后就是運行效果。
最后,程序員的生命是有限的,何必看長篇大論。