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

最新文章

  1. AMQ学习笔记 - 15. 实践方案:基于ActiveMQ的统一日志服务
  2. Vim的tag系统
  3. ACM——快速排序法
  4. iOS-NSTimer-pause-暂停-引用循环
  5. C奇淫技巧,——宏神奇
  6. jvm内存增长问题排查
  7. 201521123103 《Java学习笔记》 第七周学习总结
  8. jmeter 压测最近的心得体会
  9. Sqoop的安装部署
  10. 如何在电脑上配置两个tomcat
  11. JAVA基础复习与总结<四> 抽象类与接口
  12. MySQL1-安装
  13. FS 日志空间限定
  14. CASUAL_NCT
  15. Linux学习之常用网络通信命令与shell简单应用技巧(四)
  16. go build -ldflags
  17. C# 定时调用方法
  18. Shell脚本 | 抓取log文件
  19. javascript数组操作大全-原创
  20. Ardunio控制RGB的LED灯显示彩虹渐变色.

热门文章

  1. 兼容ie6/ff/ch/op的div+css实现的圆角框
  2. js函数收藏:获取cookie值
  3. AvalonEdit 移除自身ScrollViewer (可配合外部自定义ScrollViewer 使用)
  4. android学习笔记---63-PopupWindow,泡泡窗口的实现
  5. 一、Solr综述
  6. [React Testing] Children with Shallow Rendering
  7. ASP.NET获取用户端的真实IP
  8. Linux进程调度与切换
  9. 一小时搞定DIV+CSS布局-固定页面开度布局
  10. 委托与Lambda-浅谈