文档章节

C#脱离IronPython中执行python脚本

gsbhzh
 gsbhzh
发布于 2014/12/27 13:03
字数 248
阅读 2725
收藏 11

给客户安装程序时除了安装.net framework还要安装IronPython,是不是觉得很麻烦?

上面这一切都弱爆了,下面我来介绍一种不安装IronPython只需要引入几个IronPython的dll就可以在c#中执行python脚本的方法。

1:引入IronPython中的几个dll

         

2:进入IronPython的Lib文件夹,把Lib中的内容打包成zip,名字任意既可。打包好后放到c#项目下

       

   我把它放到了和py文件同一个目录中 

3:很关键的一步,程序初始化时执行下段代码

ScriptEngine engine = Python.CreateEngine(); 
ScriptScope scope = engine.CreateScope(); 
ScriptSource source = engine.CreateScriptSourceFromString( 
    @"import sys" "\n"  
    @"sys.path.append("".\scripts\pythonlib.zip"")" "\n"
    @"sys.path.append("".\scripts"")" "\n"
); 
source.Execute(scope);



将zip文件加入python库路径。这样能保证py脚本可以正确搜索到python库的位置。

4:尽情享用脚本语言带来的便利吧。为其他人安装程序时也不用安装讨厌的IronPython环境了。

本文转载自:

共有 人打赏支持
gsbhzh
粉丝 10
博文 22
码字总数 2605
作品 0
西安
个人站长
IronPython和C#交互

http://www.cnblogs.com/xukun588/ IronPython和C#交互 IronPython是一个.NET平台上的Python实现,包括了完整的编译器、执行引擎与运行时支持,能够与.NET已有的库无缝整合到一起。 IronPyth...

仰望星空_588
08/11
0
0
各种 Python 实现的简单介绍与比较

(点击上方公众号,可快速关注) 编译:Daetalus http://python.jobbole.com/82703/ 当谈到Python时,一般指的是CPython。但Python实际上是一门语言规范,只是定义了Python这门语言应该具备哪...

Python开发者
04/25
0
0
IronPython通过pypyodbc使用SQLAlchemy的方法

SQLAlchemy是目前在Python界大热的技术,但由于IronPython数据库接口库的缺乏,IronPython却一直无法使用此神器。 现在,借助于纯Python的ODBC接口库pypyodbc,通过简单扩展SQLAlchemy,Iro...

派派技术小组
2013/03/07
0
0
Python开发(基础):初识Python

Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quo...

wbb827
07/03
0
0
python集训营学习:第一章 python基础

1.python介绍 python是一门解释型语言,代码想运行,必须通过解释器执行 解释器种类有CPython、IPython、PyPy、Jython、IronPython等 2.变量 声明变量 变量定义规则 变量名只能是字母、数字或...

淡水螃蟹
05/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

React 服务器渲染原理解析与实践

网盘下载地址 React 服务器渲染原理解析与实践 本套课程,讲解了React中SSR技术的整个搭建思路及流程,完整的从原理上讲清楚了SSR的概念,重点在于讲解编写SSR框架遇到的各种知识点,以及细节...

qq__2304636824
7分钟前
0
0
Jenkins使用

clean install -Dmaven.test.skip=true

1713716445
16分钟前
0
0
多线程

1. 多线程概念。并发和并行的概念。 多线程指的是一段时间内cpu同时执行多个线程。一个程序至少运行>=1个进程,进程就是运行中的程序,而一个进程至少运行>=1个线程,线程是操作系统能调度的...

鱼想吃肉
今天
0
0
HBase 表修复在线方式和离线方式

一、在线修复 1.1 使用检查命令 $ ./bin/hbase hbck 该命令可完整修复 HBase 元数据信息;存在有错误信息会进行输出; 也可以通过如下命令查看详细信息: $ ./bin/hbase hbck -details 1.2 ...

Ryan-瑞恩
今天
3
0
redis 系列二 -- 常用命令

1.基础命令 info ping quit save dbsize select flushdb flushall 2.键命令 2.1 set 直接赋值 set a a 2.2 get 取值 get a 2.3 exists 是否存在 exists a 2.4 expire 设置剩余时间 秒 expire......

imbiao
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部