C#调用Python模块的方法

发布时间 - 2026-01-11 00:56:23    点击率:

  当下,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#调用Python模块  # C#调用Python  # C#调用Python应用  # C#调用python文件执行  # C#调用python脚本的方法步骤(2种)  # C#调用python.exe使用arcpy方式  # C#使用IronPython库调用Python脚本  # C# 如何调用python脚本  # C#使用IronPython调用Python的实现  # C#/.net程序调用Python的教程分享  # C#使用IronPython调用Python  # C#调用python脚本的方法详解  # C#使用IronPython调用python代码的实现示例  # 都是  # 运行环境  # 那是  # 你也  # 和我  # 我来  # 推荐使用  # 请大家  # 所需  # 很容易  # 微软  # 下一  # 能让  # 并将  # 各有  # 是否会  # 第二步  # 则会  # 第三步  # 可执行 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在万网ECS上快速搭建专属网站?  晋江文学城电脑版官网 晋江文学城网页版直接进入  深入理解Android中的xmlns:tools属性  活动邀请函制作网站有哪些,活动邀请函文案?  大学网站设计制作软件有哪些,如何将网站制作成自己app?  Laravel如何实现登录错误次数限制_Laravel自带LoginThrottles限流配置【方法】  javascript基本数据类型及类型检测常用方法小结  Laravel Eloquent关联是什么_Laravel模型一对一与一对多关系精讲  详解vue.js组件化开发实践  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  浅谈javascript alert和confirm的美化  Laravel怎么使用Intervention Image库处理图片上传和缩放  如何在 Pandas 中基于一列条件计算另一列的分组均值  Laravel集合Collection怎么用_Laravel集合常用函数详解  php嵌入式断网后怎么恢复_php检测网络重连并恢复硬件控制【操作】  LinuxCD持续部署教程_自动发布与回滚机制  ,在苏州找工作,上哪个网站比较好?  如何实现javascript表单验证_正则表达式有哪些实用技巧  Laravel N+1查询问题如何解决_Eloquent预加载(Eager Loading)优化数据库查询  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  Laravel如何配置Horizon来管理队列?(安装和使用)  如何快速搭建高效服务器建站系统?  开心动漫网站制作软件下载,十分开心动画为何停播?  微博html5版本怎么弄发语音微博_语音录制入口及时长限制操作【教程】  bootstrap日历插件datetimepicker使用方法  高端智能建站公司优选:品牌定制与SEO优化一站式服务  如何在IIS服务器上快速部署高效网站?  Java垃圾回收器的方法和原理总结  logo在线制作免费网站在线制作好吗,DW网页制作时,如何在网页标题前加上logo?  Laravel如何为API生成Swagger或OpenAPI文档  Laravel怎么实现前端Toast弹窗提示_Laravel Session闪存数据Flash传递给前端【方法】  美食网站链接制作教程视频,哪个教做美食的网站比较专业点?  laravel服务容器和依赖注入怎么理解_laravel服务容器与依赖注入解析  如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环  Laravel如何实现文件上传和存储?(本地与S3配置)  laravel怎么使用数据库工厂(Factory)生成带有关联模型的数据_laravel Factory生成关联数据方法  深圳网站制作的公司有哪些,dido官方网站?  lovemo网页版地址 lovemo官网手机登录  Win11搜索栏无法输入_解决Win11开始菜单搜索没反应问题【技巧】  JS去除重复并统计数量的实现方法  Laravel 419 page expired怎么解决_Laravel CSRF令牌过期处理  javascript中的try catch异常捕获机制用法分析  如何在IIS中配置站点IP、端口及主机头?  Laravel如何实现多表关联模型定义_Laravel多对多关系及中间表数据存取【方法】  如何快速查询网站的真实建站时间?  如何在宝塔面板创建新站点?  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  php打包exe后无法访问网络共享_共享权限设置方法【教程】  java中使用zxing批量生成二维码立牌  如何在云主机上快速搭建网站?