.net 调用 Python脚本中的代码
2024-08-29 06:36:42
使用工具: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 还是比较详细的;
最新文章
- JS魔法堂:IMG元素加载行为详解
- .net学习笔记----有序集合SortedList、SortedList<;TKey,TValue>;、SortedDictionary<;TKey,TValue>;
- Ruby学习笔记
- asp.net mvc 如何将controller 里一个action 返回值为list<;>;的值输出到view
- codeforces C. Design Tutorial: Make It Nondeterministic
- SASS使用总结
- jquery jsonp实现跨域
- C++ 学习资料搜寻与学习(第一期)(未完待续)
- 秀一套每秒处理1500+个事务的profile
- perl 自动登陆网站发短信
- [Android阅读代码]android-async-http源码学习一
- python_在windows下安装配置python开发环境及Ulipad开发工具
- Python+Selenium定位不到元素常见原因及解决办法(报:NoSuchElementException)
- nongsanli
- Leetcode_20_Valid Parentheses
- pyqt5 动画在QThread线程中无法运行问题
- [WebRTC/JsSIP] AUDIO RTP REPORTS ERROR: [Remote Address Error!]
- JS设计模式(4)迭代器模式
- JDK8安装与配置
- extJs学习的资源
热门文章
- 一个简单servlet容器
- 201871010124-王生涛《面向对象程序设计(java)》第四周学习总结
- Spring Cloud Alibaba Sentinel 的配置选项:spring.cloud.sentinel.transport.port,默认值:8719
- echars vue 封装全局组件 曲线 柱状图 同v-chars绿色系 配置样式
- java为什么学JavaScript?
- ESA2GJK1DH1K升级篇: 快速的移植升级程序到自己的项目(APP用户程序制作)
- Vue error: Parsing error: Unexpected token
- <;LinkedList>; 160
- 洛谷 P3742 umi的函数
- NLP之关键词提取(TF-IDF、Text-Rank)