加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#调用Python模块的方法

发布时间:2020-12-15 06:06:40 所属栏目:百科 来源:网络整理
导读:当下,C#与Python都是比较热门的计算机编程语言,他们各有优缺点,如果能让他们互相配合工作,那是多么美好的事情,今天我来讲解一下如何利用C#来调用Python。 如果让C#支持调用Python模块,我们首先需要安装一些扩展,这里推荐使用IronPython库。 第一步,

  当下,C#与Python都是比较热门的计算机编程语言,他们各有优缺点,如果能让他们互相配合工作,那是多么美好的事情,今天我来讲解一下如何利用C#来调用Python。

  如果让C#支持调用Python模块,我们首先需要安装一些扩展,这里推荐使用IronPython库。

第一步,我们需要下载IronPython库的安装包,这里请大家移步官网http://ironpython.codeplex.com/,下载并安装相关库文件。

第二步,我们新建一个C#控制台测试项目,并将IronPython安装目录中的如下DLL文件添加进项目引用。

第三步,我们分别编写C#代码,并添加Python代码文件到项目中,代码如下。

C#代码部分

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


namespace ConsoleApplication1
{
 class Program
 {
  static void Main(string[] args)
  {
   ScriptRuntime pyRuntime = Python.CreateRuntime(); //创建一下运行环境
   dynamic obj=pyRuntime.UseFile("debug.py"); //调用一个Python文件
   int num1,num2;
   Console.Write("Num1:");
   num1 = Convert.ToInt32(Console.ReadLine());
   Console.Write("Num2:");
   num2 = Convert.ToInt32(Console.ReadLine());
   int sum = obj.add(num1,num2); //调用Python文件中的求和函数
   Console.Write("Sum:");
   Console.WriteLine(sum);
  }
 }
}

Python代码部分

def add(num1,num2):
 return num1+num2;

编译时需要修改工程中的Python文件属性如下图,否则会报出文件无法定位的错误,运行结果如下右图。

  通过上面的实验过程,大家可以很容易的使用C#调用Python文件,但是不知道大家是否会和我产生相同的疑惑,如何把C#的可执行程序与Python文件打包呢? 如果是简单的压缩,可能会缺失运行所需的库文件,如果你也对此有疑问,请留意博客的下一篇文章:利用Visual Studio寻找程序必要的运行库文件。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程小技巧。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读