使用C#调用Python代码

一、首先,我们需要添加运行环境

在Nuget中添加IronPython

使用C#调用Python代码_第1张图片

        随后在代码头文件中添加

using IronPython.Hosting; //IronPython库文件
using Microsoft.Scripting.Hosting; //微软脚本解释库文件

二、接下来我们需要准备好Python代码,此次实验中定义了两个函数

def add (a,b):
    return a+b;

def dec (a,b):
    return a-b;

        为了防止报Non-ASCII character '\xe8' in file .的错误,可以在Python的开头添加编译注明代码指定其编码模式。

#encoding:utf-8

三、将编译好的.py文件放置在C#工程的bin/debug文件夹下

四、在C#代码中引用对应的Python函数

            ScriptRuntime pyRuntime = Python.CreateRuntime();     //创建运行环境
            dynamic obj = pyRuntime.UseFile("TestDemo.py");     //实例化python对象

            int a=0, b=0;
            Console.WriteLine("请输入第一个数");
            a = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("请输入第二个数");
            b = Convert.ToInt32(Console.ReadLine());

            Console.WriteLine("Python加法");
            Console.WriteLine(obj.add(a, b)); //调用Python文件中的求和函数

            Console.WriteLine("Python减法");
            Console.WriteLine(obj.dec(a, b)); //调用Python文件中的求和函数

            Console.Read();

        其中obj对象后跟需要调用的python函数名

执行结果如下

使用C#调用Python代码_第2张图片

你可能感兴趣的:(工程实践,环境搭建&故障排除,c#,python,开发语言)