C# 调用Python库 最简单方法
起个头,技术性文章应该言简意赅(因我看到外国回答问题都是可以一句代码解决的,绝不会写第二句),实现功能无误再贴出文章。
首先我不用 IronPython来写这个.py文件,因为我有Pycharm,而且ipy需要配置某些环境,且代码没有提示,不推荐。
直入主题:
1.安装IronPython并在其路径下找到
找到这两个dll,并复制到代码对应路径下。
2.引用
,添加引用,在刚才的路径找到即可。
3.py写个简单的函数
,简单能运行,函数有个返回值就行。
4.项目中添加新文件夹,右键打开文件路径,将.py文件复制进去。
5.引用空间。
using IronPython.Hosting;
using Microsoft.Scripting.Hosting;
6.我这里创建的是窗体的一个项目。其中这两行是对python的链接,创建和配置环境,obj就是这个.py文件的实例了。
ScriptRuntime pyRunTime = Python.CreateRuntime();
dynamic obj = pyRunTime.UseFile(pyPath+"IronPy_Test.py");
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms; using IronPython.Hosting;
using Microsoft.Scripting.Hosting; namespace WinForm_ipy
{ public partial class Form1 : Form
{
//这是.py文件的路径
string pyPath = "C:\\Users\\hongheng.mei\\Desktop\\InronPy\\WinForm_ipy\\WinForm_ipy\\PythonFiles\\";
public Form1()
{
InitializeComponent();
} private void btnOpen_Click(object sender, EventArgs e)
{
ScriptRuntime pyRunTime = Python.CreateRuntime();
dynamic obj = pyRunTime.UseFile(pyPath+"IronPy_Test.py");
var value = obj.Hello();
tbxDisplay.Text = value;
MessageBox.Show(value); }
}
}
7.关于有些人要设置.py文件属性为始终复制,而我是默认的不复制也能正常运行,这我没弄清楚。
8.最后就是运行效果。
最后,程序员的生命是有限的,何必看长篇大论。
C# 调用Python库 最简单方法的更多相关文章
- Python库的安装方法
Python库的安装方法 Python的解释器CPython是开源的,我们可以下载查看其源代码,同时,Python语言的各种库也都是开源的.利用Python语言编程,可用的库有很多,在Python官方 ...
- ODOO区分测试库和正式库的简单方法
ODOO区分测试库和正式库的简单方法.1. 打开 开发者模式,右上角能显示数据库名称,缺点是,太耗系统资源了,数据多的时候就明显感觉慢了.2. 安装社区的显示测试帐套的模块, 若是正式环境还是尽量少装 ...
- C#调用Python脚本的简单示例
C#调用Python脚本的简单示例 分类:Python (2311) (0) 举报 收藏 IronPython是一种在 .NET及 Mono上的 Python实现,由微软的 Jim Huguni ...
- 【翻译】无需安装Python,就可以在.NET里调用Python库
原文地址:https://henon.wordpress.com/2019/06/05/using-python-libraries-in-net-without-a-python-installat ...
- python反转字符串(简单方法)及简单的文件操作示例
Python反转字符串的最简单方法是用切片: >>> a=' >>> print a[::-1] 654321 切片介绍:切片操作符中的第一个数(冒号之前)表示切片 ...
- 调用MyFocus库,简单实现二十几种轮播效果
一.首先点击这里下载myFocus库文件,标准文件库就行了,很小仅仅1.4M. myFocus库有以下的好处: a . 文件小巧却高效强大,能够实现二十几种轮播的效果. b . 极其简单的使用,只需要 ...
- 配置git同时push到两个远端库的简单方法
最近在写一个开源的论坛系统,在发布代码时选择了github和coding这两个平台,我手懒,不想敲两次git push了,所以说突然有了一个很奇怪的需求:用一条git push同时push到两个远端代 ...
- day-13 python库实现简单非线性回归应用
一.概率 在引入问题前,我们先复习下数学里面关于概率的基本概念 概率:对一件事发生的可能性衡量 范围:0<=P<=1 计算方法:根据个人置信区间:根据历史数据:根据模拟数据. 条件概率:B ...
- Python之tkinter:调用python库的tkinter带你进入GUI世界(二)——Jason niu
#tkinter:tkinter应用案例之便签框架LabelFrame的应用将组件(多选按钮)放到一个框架里 from tkinter import * root=Tk() root.title(&q ...
随机推荐
- python3 Django集成Ueditor富文本编辑器
1.下载 python3: https://github.com/twz915/DjangoUeditor3/ (直接下载zip) 2.解压,解压打开后找到DjangoUeditor将DjangoUe ...
- 字符串转xml,特殊字符的问题
字符串转xml,如果字符串包含&,< 等特殊符号,转成xml 需要特殊处理,否则XML解析会出错. String uuid = UUID.randomUUID().toString(). ...
- EE4218 / EE4216 Faculty of Science and Engineering
Faculty of Science and EngineeringDepartment of Electronic and ComputerEngineeringEnd of Semester As ...
- 设计、定义并实现Complex类
设计.定义并实现Complex类 #include <iostream> #include <cmath> using namespace std; class MyCompl ...
- Nginx(二)-服务模式运行nginx之WINSW
虽然使用命令行控制ngix很简单,但是如果作为一个服务工作的话能更方便地启动.停止或者设置依赖项. 这里使用开源项目Windows Service Wrapper 来实现. github下载地址:ht ...
- Java-字符串、集合
1.只要是字符串,必然是对象. 2.API文档的基本使用 3.如何创建字符串: 直接饮用赋值,也是一个字符串对象. 可以通过new关键字来调用string的构造方法: public string (c ...
- C++类(Class)总结
---恢复内容开始--- 一.C++类的定义 C++中使用关键字 class 来定义类, 其基本形式如下:class 类名{ public: //行为或属性 protected: //行为或 ...
- mac电脑安装wxPython2.8.12.1不成功怎么办 , Could not find a version that satisfies the requirement 2.8.12.1
目的:robotframe-ride用于接口测试 遇到的问题: 1.mac终端pip安装robotframework-ride后 pip install robotframework-ride (pi ...
- *** target pattern contains no `%'. Stop.
windows上的ndk工程移到linux下编译就报这个错, 解决方法,把jni目录下obj目录删除,重新编译就好了
- thrift常见异常及原因分析(updating)
[org.apache.thrift.TException家族] [Thrift架构] 以下是thrift的客户端和服务端交互的一个原理图.可以看到遵循了rpc框架的传输层.协议层和应用层三层.本文提 ...