news 2026/3/14 1:52:00

C#使用pythonnet简单示例

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
C#使用pythonnet简单示例

1.nuget安装pythonnet

2.编写python测试文件 example.py内容如下

def HelloWorld(): print("Hello world") class Calculator: def add(self,a:float,b:float)->float: return a+b

3.c#下测试

Runtime.PythonDLL = "C:\\Program Files\\Python312\\python312.dll"; PythonEngine.Initialize(); PythonEngine.BeginAllowThreads(); using (Py.GIL()) { string FileName = "example"; dynamic mymodule = Py.Import(FileName); //dynamic py = mymodule.HelloWorld(); dynamic calculator = mymodule.Calculator(); float x = calculator.add(12.1, 23.23); Log.Logger.Debug($"py cal = [{x}] "); }

4.测试效果,C#控制台输出结果

5.注意 python文件和C#可执行文件必须在同一个目录下才行

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/13 17:19:46

Linux 文件描述符、端口、进程与线程数量上限分析

在高并发服务器开发中,系统资源限制往往成为性能瓶颈的"隐形杀手"。一个看似简单的 accept() 或 socket() 调用,可能因为触及系统限制而失败。理解 Linux 系统的关键资源上限,是构建高可用、高并发系统的前提。 本文将深入分析四个核心系统资源的理论与实际限制,…

作者头像 李华
网站建设 2026/3/14 3:59:22

Java基于SSM+JSP的某小区物业管理系统设计与实现

项目说明 随着社会的快速发展和城市化进程的加速,住宅小区作为人们生活的重要场所,其物业管理的重要性日益凸显。传统的小区物业管理方式已经无法满足现代社会的需求,因此,开发一个高效、智能的小区物业管理系统成为了一个必然的趋…

作者头像 李华
网站建设 2026/3/13 15:00:44

Java基于Spring Boot+Vue的仓库管理系统的设计与实现

所需该项目可以在最下面查看联系方式,为防止迷路可以收藏文章,以防后期找不到 项目介绍 在全球化竞争与数字化转型的双重驱动下,仓库作为供应链的核心节点,其管理效率直接影响企业的成本结构、服务质量和市场竞争力。传统的仓库管…

作者头像 李华
网站建设 2026/3/12 19:03:48

Linux网络设备驱动框架深度解析:枚举、注册、挂载全流程

在Linux内核网络子系统中,网络设备驱动是连接硬件与协议栈的核心桥梁。与字符设备、块设备驱动不同,网络设备驱动有其独特的抽象模型和实现逻辑。本文将从核心原理出发,逐步拆解网络设备驱动的枚举、注册、挂载全流程,结合代码示例帮你吃透这一核心技术。 一、核心原理:L…

作者头像 李华
网站建设 2026/3/13 23:49:09

余行补位方法论:构建专精特新企业产业生态领导力的实践体系

余行补位方法论:构建专精特新企业产业生态领导力的实践体系 一、生态领导力的价值重估:从供应商到标准制定者的跃迁 1.1 传统企业价值的四个边界 技术边界:核心技术保护范围决定竞争壁垒 市场边界:目标客户群体限定增长空间 组…

作者头像 李华