C#调用Python模块的方法

所属分类: 软件编程 / C#教程 阅读数: 83
收藏 0 赞 0 分享

  当下,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寻找程序必要的运行库文件

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

更多精彩内容其他人还在看

c#开发word批量转pdf源码分享

已经安装有Office环境,借助一些简单的代码即可实现批量Word转PDF,看下面的实例源码吧
收藏 0 赞 0 分享

c# xml API操作的小例子

这篇文章主要介绍了c# xml API操作的小例子,有需要的朋友可以参考一下
收藏 0 赞 0 分享

c#唯一值渲染实例代码

这篇文章主要介绍了c#唯一值渲染实例代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

淘宝IP地址库采集器c#代码

这篇文章主要介绍了淘宝IP地址库采集器c#代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C#在后台运行操作(BackgroundWorker用法)示例分享

BackgroundWorker类允许在单独的专用线程上运行操作。如果需要能进行响应的用户界面,而且面临与这类操作相关的长时间延迟,则可以使用BackgroundWorker类方便地解决问题,下面看示例
收藏 0 赞 0 分享

c#文本加密程序代码示例

这是一个加密软件,但只限于文本加密,加了窗口控件的滑动效果,详细看下面的代码
收藏 0 赞 0 分享

c#生成站点地图(SiteMapPath)文件示例程序

这篇文章主要介绍了c#生成站点地图(SiteMapPath)文件的示例,大家参考使用
收藏 0 赞 0 分享

C# 键盘Enter键取代Tab键实现代码

这篇文章主要介绍了C# 键盘Enter键取代Tab键实现代码,有需要的朋友可以参考一下
收藏 0 赞 0 分享

C# WinForm导出Excel方法介绍

在.NET应用中,导出Excel是很常见的需求,导出Excel报表大致有以下三种方式:Office PIA,文件流和NPOI开源库,本文只介绍前两种方式
收藏 0 赞 0 分享

C#串口通信程序实例详解

在.NET平台下创建C#串口通信程序,.NET 2.0提供了串口通信的功能,其命名空间是System.IO.Ports,创建C#串口通信程序的具体实现是如何的呢?让我们开始吧
收藏 0 赞 0 分享
查看更多