.net 调用 Python脚本中的代码
程序员文章站
2023-01-22 22:47:12
使用工具: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 还是比较详细的;
上一篇: 吃野菜致癌,究竟是否属实