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#可执行文件必须在同一个目录下才行

相关推荐
小小小米粒3 分钟前
阿姆达尔定律(Amdahl‘s Law)
java·开发语言
知彼解己3 分钟前
Java 版本演进
java·开发语言·spring boot
风样滴男人哟8 分钟前
PHP特性之反射类ReflectionClass机制
android·开发语言·php
半兽先生11 分钟前
大模型技术开发与应用——5.大模型Agent开发(CrewAI)
大数据·人工智能·python·机器学习·ai
眼泪划过的星空14 分钟前
快速了解LangGraph:构建智能Agent工作流的核心框架
人工智能·python·langchain
看昭奚恤哭21 分钟前
Flutter 布局核心思想
开发语言·javascript·flutter
IsSh9nj6q1 小时前
Python全栈应用搭建神器magic-dash .新版本介绍
开发语言·python·dash
Cachel wood1 小时前
hands-on-modern-rl:动手学强化学习策略梯度reinforce
开发语言·python
蓝斯4972 小时前
一碰即传,重构跨设备文件分享体验
开发语言·python·重构
宁风NF2 小时前
JavaScript:内存、垃圾回收、性能优化
开发语言·前端·javascript·学习·性能优化·es6