使用工具: 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 还是比较详细的;
来源: http://www.bubuko.com/infodetail-3201318.html