起个头,技术性文章应该言简意赅(因我看到外国回答问题都是可以一句代码解决的,绝不会写第二句),实现功能无误再贴出文章。

  首先我不用 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库 最简单方法的更多相关文章

  1. Python库的安装方法

    Python库的安装方法 Python的解释器CPython是开源的,我们可以下载查看其源代码,同时,Python语言的各种库也都是开源的.利用Python语言编程,可用的库有很多,在Python官方 ...

  2. ODOO区分测试库和正式库的简单方法

    ODOO区分测试库和正式库的简单方法.1. 打开 开发者模式,右上角能显示数据库名称,缺点是,太耗系统资源了,数据多的时候就明显感觉慢了.2. 安装社区的显示测试帐套的模块, 若是正式环境还是尽量少装 ...

  3. C#调用Python脚本的简单示例

    C#调用Python脚本的简单示例 分类:Python (2311)  (0)  举报  收藏 IronPython是一种在 .NET及 Mono上的 Python实现,由微软的 Jim Huguni ...

  4. 【翻译】无需安装Python,就可以在.NET里调用Python库

    原文地址:https://henon.wordpress.com/2019/06/05/using-python-libraries-in-net-without-a-python-installat ...

  5. python反转字符串(简单方法)及简单的文件操作示例

    Python反转字符串的最简单方法是用切片: >>> a=' >>> print a[::-1] 654321 切片介绍:切片操作符中的第一个数(冒号之前)表示切片 ...

  6. 调用MyFocus库,简单实现二十几种轮播效果

    一.首先点击这里下载myFocus库文件,标准文件库就行了,很小仅仅1.4M. myFocus库有以下的好处: a . 文件小巧却高效强大,能够实现二十几种轮播的效果. b . 极其简单的使用,只需要 ...

  7. 配置git同时push到两个远端库的简单方法

    最近在写一个开源的论坛系统,在发布代码时选择了github和coding这两个平台,我手懒,不想敲两次git push了,所以说突然有了一个很奇怪的需求:用一条git push同时push到两个远端代 ...

  8. day-13 python库实现简单非线性回归应用

    一.概率 在引入问题前,我们先复习下数学里面关于概率的基本概念 概率:对一件事发生的可能性衡量 范围:0<=P<=1 计算方法:根据个人置信区间:根据历史数据:根据模拟数据. 条件概率:B ...

  9. Python之tkinter:调用python库的tkinter带你进入GUI世界(二)——Jason niu

    #tkinter:tkinter应用案例之便签框架LabelFrame的应用将组件(多选按钮)放到一个框架里 from tkinter import * root=Tk() root.title(&q ...

随机推荐

  1. 【Python基础】lpthw - Exercise 45 制作游戏

    作者在本节中给出了 一些风格建议. 一.函数的风格 1. 类里面的函数经常被称作“方法”,但实质上它和函数没什么不同. 2. 使用类的时候,可以用动词而不是名词给函数命名,指明其具体功能,例如list ...

  2. linux CentOS 安装 nginx+tomcat+java+mysql运行环境

    本文介绍了CentOS7 64 Java,Tomcat,MySQL,Maven热部署等服务器环境的搭建过程. 服务器: 已经将所需要的工具(Xshell,Xftp.FileZilla等sftp上传工具 ...

  3. CPU漏洞补丁KB4056892 卸载及忽略办法

    2018.1.4微软发布了针对intel CPU漏洞的补丁 KB4056892 性能降低不说, 针对一般平民根本没多大意义, 另外还会导致一些软件无法正常使用, (我是使用蓝叠经典版, 启动就会蓝屏) ...

  4. Express全系列教程之(六):cookie的使用

    一.关于Cookie 在我们关闭一个登录过的网址并重新打开它后,我们的登录信息依然没有丢失:当我们浏览了商品后历史记录里出现了我们点击过的商品:当我们推回到首页后,推荐商品也为我们选出了相似物品:事实 ...

  5. Nginx(一)-windows下的安装配置

    第一步 下载 官网下载地址 因为只是测试这里选择最新版本1.13.9 下载完成得到zip压缩包 解压后得到如下目录 第二步  启动nginx 注意不要直接双击nginx.exe,这样会导致修改配置后重 ...

  6. Numpy增加一列,指定概率指定参数

    这里主要应用到numpy.random.choice 可以根据需求,比如增加一列,A B C 为该列数据,随机概率生成 详见代码 import numpy as np import pandas as ...

  7. 2018-2019-2 网络对抗技术 20165336 Exp1 PC平台逆向破解

    2018-2019-2 网络对抗技术 20165336 Exp1 PC平台逆向破解 1. 逆向及Bof基础实践说明 1.1 实践目标 本次实践的对象是一个名为pwn1的linux可执行文件.该程序正常 ...

  8. innerHTML .innerText区别

    ().innerHtml("“):改变html元素: ().innerTEXT(”“):改变文本元素: 试验代码 <!DOCTYPE html> <html lang=&q ...

  9. webpack(6)-模块热替代&tree shaking

    模块热替换(hot module replacement 或 HMR) 模块热替换(hot module replacement 或 HMR)是 webpack 提供的最有用的功能之一.它允许在运行时 ...

  10. Summary: Calculate average where sum exceed double limits

    What is a good solution for calculating an average where the sum of all values exceeds a double's li ...