使用工具:IronPython 工具介紹:是一種在 .NET 及 Mono上的 Python 實現,是一個開源的項目,基於微軟的 DLR 引擎。(個人理解就是在 .net上面運行Python代碼) 使用方法:先新建一個控制台應用程式 => 使用Nuget 添加IronPython包 => 在Main ...
使用工具:IronPython
工具介紹:是一種在 .NET 及 Mono上的 Python 實現,是一個開源的項目,基於微軟的 DLR 引擎。(個人理解就是在 .net上面運行Python代碼)
使用方法:先新建一個控制台應用程式 => 使用Nuget 添加IronPython包 => 在Main()函數中編寫如下代碼:
ScriptEngine engine = Python.CreateEngine(); ScriptScope scope = engine.CreateScope(); string script = "print('Hello world!')"; var sourceCode = engine.CreateScriptSourceFromString(script); var result = sourceCode.Execute<object>(scope); Console.WriteLine(result);
代碼解析:ScriptEngine=>Python 引擎
ScriptScope=>Python上下文(相當於一個容器可用於傳遞一些變數,該欄位可有多個)
ScriptSources=>腳本源碼
輸出結果:Hello world!
代碼延伸:有個這個基礎的模本相信大家也會不由自主的發揮想象力了(改代碼增加自己的需求);
比如:現在項目裡面有個已經寫好的 xx.py程式,我想調用裡面的方法,獲取一些信息,
此時我可以使用Directory Class來得到一個腳本,通過與scope.GetVariable("方法名");
結合使用來得到我想要的值;
完整項目:請點擊這裡!
由於項目只用到 .net調用Python代碼,所以未對Python調用 .Net 代碼做記錄,如果大家有需求的話
可以參考:https://www.cnblogs.com/pasoraku/p/4906715.html 還是比較詳細的;