C#调用python文件执行

我的电脑环境是使用.net framework4.5.1,如果在调试过程中调不通请注意

我用的是Visual studion 2017,python组件下载地址:http://ironpython.codeplex.com/releases/view/

下载的版本是2.7,下载安装完之后记得引入安装路径下的以下三个dll

(1)首先先说一个简单的功能,在c#代码中执行python字符串,内容如下:

(2)c#调用python文件:

在当前目录下新建一个后缀名为py的文件,文件名为AmoutDisc.py内容如下

dicAmt = 0.05
retAmt = amt
if amt>25:
   retAmt = amt-(amt*dicAmt)

该文件定义了一个python文件,然后在c#代码中调用该python文件,给该文件传参,具体应该说给参数amt传值,最后在代码中获取python文件中的retAmt的变量

值,具体代码如下:

                ScriptRuntime scriptRuntime =Python.CreateRuntime();
                ScriptEngine pythEng = scriptRuntime.GetEngine("Python");
                ScriptSource scriptSource = pythEng.CreateScriptSourceFromFile("AmoutDisc.py");
                ScriptScope scope = pythEng.CreateScope();
                //scope.SetVariable("prodCount", Convert.ToInt32("34343"));
                scope.SetVariable("amt", Convert.ToDecimal("434"));
                scriptSource.Execute(scope);
                dynamic a = scope.GetVariable("retAmt");

结果如下:

调用成功.

时间: 2024-10-12 16:22:19

C#调用python文件执行的相关文章

Jython:java调用python文件之第三方包路径问题

本方法解决python代码的可移植性,不需要在新机器上配置python环境,只通过安装jython的方式将python代码嵌入java工程 1. Jython如何安装 下载地址:jython_installer-2.5.0.jar.下载需要积分,如果无积分,可联系楼主. 傻瓜式下一步安装方式,路径最好和工程选在同一目录下. 2. 运行python代码 举个简单例子,安装好java环境及eclipse之后,copy如下代码即可运行.注释部分为运行文件的方式,需要新建文件后去掉注释执行. impor

php五分Pk10平台搭建调用python文件

以前小组开展项目实训,五分Pk10平台搭建[企鹅21717-93408]我们小组选择的是大数据分析,其中有一个用python进行文本分析之后对用户输入的数据进行分析,然后输出对应的岗位及其他.要求是前端将文本要求传到后台php,php调用python程序处理,再将数据传给php,然后再传到前端,进行下一步处理.结果python传回的数据,在前端显示乱码了,而且得出的结果与单独运行python代码完全不同,一句话,就是php调用python程序期间出错了. ? ? ? ? ? 我很认真的检查了好几

c#中调用python

1. 安装IronPython,到http://ironpython.codeplex.com/下载安装包 2. 创建项目 创建一个C#的控制台应用程序. 添加引用: 浏览到IronPython的安装目录中,添加对IronPython.dll,Microsoft.Scripting.dll 两个dll的引用. 3. 添加Python文件到当前的项目中 创建一个文本文件命名为:hello.py, 编辑如下 def welcome(name):    return "hello" + na

C++调用python

本文以实例code讲解 C++ 调用 python 的方法. 本文在util.h中实现三个函数: 1. init_log: 用google log(glog)初始化log 2. exe_command: 由 C++ 执行 shell code 3. exe_py: C++调用python文件 Code: include/util.h: /*************************************************************************** *- *

R 调用 python

上一篇说了python使用 rpy2 调用 R,这里介绍R如何调用python.R的强项在于统计方面,尤其是专业的统计分析,统计检验以及作图功能十分强大,但是在通用性方面,就远不如Python了,比如python可以做web,可以开发GUI,可以爬虫,甚至可以开发游戏,这些R其实也不是完全不行,但是在易用性方面实在是难以与Python相匹敌.所以如果要是能将R与Python相结合,充分发挥二者的优势,那么无疑我们会得到一个更加强大的武器.幸运的是,R 为我们提供了这么一个工具,rPython.

Windows平台下如何在C#中调用Python

最近迷上了Python,发现它能够做很多C#无法完成的事情,比如,调用CMD或者在CMD中执行一个exe文件命令行并获得输出的结果.过程简单,处理起来也非常方便,但如果要用C#调用Python文件呢,没关系,你想到的肯定早就有也人想到过.网上Google一下,超级多.索性拿来实践吧. 首先要用到的就是这个软件:IronPython,官方下载地址:http://ironpython.codeplex.com 安装在Windows下之后去它的安装地址查找下面这两个文件: IronPython.dll

编程:C#调用Python模块

当下,C#与Python都是比较热门的计算机编程语言,他们各有优缺点,如果能让他们互相配合工作,那是多么美好的事情,今天我来讲解一下如何利用C#来调用Python. 如果让C#支持调用Python模块,我们首先需要安装一些扩展,这里推荐使用IronPython库. 第一步,我们需要下载IronPython库的安装包,这里请大家移步官网 http://ironpython.codeplex.com/ ,下载并安装相关库文件. 第二步,我们新建一个C#控制台测试项目,并将IronPython安装目录

winfrom桌面程序调用python解释器

Winfrom桌面程序调用python解释器执行py脚本后台执行完成具体的功能,为什么要这样处理呢?因为我现在的大部分过项目都是后台的脚本处理,界面基本的输入完成之后,将参数按照规则传入到脚本的入口,根据参数的不同执行不同的脚本流程,如果要修改某一个处理过程或者添加新的模块,不需要修改前台的任何代码,只需要在脚本中修改就可以达到需求的效果,简单.方便,风险较小,影响可控等优点. 因此,我做了一个demo,仅供参考,不足之处,请赐教! 界面如图: Start_exe_py的执行代码如下: 1 pr

2015/10/9 Python基础(21):可调用和可执行对象

在Python中有多种运行外部程序的方法,比如,运行操作系统命令或另外的Python脚本,或执行一个磁盘上的文件,或通过网络来运行文件.这完全取决于想要干什么.特定的环境包括: 在当前脚本继续运行 创建和管理子进程 执行外部命令或程序 执行需要输入的命令 通过网络来调用命令 执行命令来创建需要处理的输出 执行其他的Python脚本 执行一系列动态生成的Python语句 导入Python模块 Python中,内建和外部模块都可以提供上述各种功能.程序员得根据实现的需要,从这些模块中选择合适的处理方