zoukankan      html  css  js  c++  java
  • IronPython初体验和实战集合等类型转换和类型匹配

    人老了,做什么都累~学到了这么多技术,从最早C到C++再到JAVA再到C#,最终都是为了改善产品,改善系统的可维护性。众所周知C#,C++,C都是强类型语言,什么情况都得定义一些实体类来改变业务模型,虽然C#4.0增加了很多runtime功能,但是要和脚本(比如PHP)比起来,真的还不够完美。就比如我想根据业务逻辑生成一段CS代码。。。肿么办?难道还的打包成程序集然后在程序里加载跑起来,这显然很不现实。如果遇到一些BT的业务逻辑经常修改和调整,那就彻底崩溃了,为了解决项目中遇到的这些问题(在不编译的情况下随意改变业务逻辑,或者动态解析窗体控件,动态生成SQL)。找了很多资料,最早是CODEDOM,到现在DLR!

    基于DLR的运行时脚本有RUBY,python,js。不过通过资料收集发现JS还不够完美,虽然我很想用JS,哎~无奈的学习python

    说了这么多开始把 关键词 IronPyth

    IronPyth干什么的我这里就不多说了

    1:环境

    xp

    vs2010

    Ironpython 2.7.3

    首先安装Python Tools for Visual Studio。我用VS2010  选择2010版本

    下载地址:http://pytools.codeplex.com/releases/view/103102

    然后安装python解释器  我这里用的NET实现的Python,因为要和C#交互~图个稳当

    CPython
    这是原生Python解释器.    我们推荐 32-bit 3.3 or 2.7 版本 为了更好的兼容性. 
    All versions: http://python.org/download/ 
    IronPython
    .NET实现的Python. 最好的与CSharp互动,我们推荐 2.7.3 版本 
    IronPython 2.7.3 32- and 64-bit Windows Installe

    2:实战

    python代码 保存为test.py

    def test():
        return "test"

    C# 代码

    ScriptRuntime rtmPy = Python.CreateRuntime();
    dynamic obj = rtmPy.UseFile("test.py");
    MessageBox.Show(obj.test());

    今天就写到这里吧,还有很多细节~下次补上

  • 相关阅读:
    八皇后 c++
    筛法求素数
    3月13号周练——2015 Multi-University Training Contest 9
    Mac搭建Git服务器—开启SSH
    push自定义动画
    学习:二维码、QR码、J4L-QRCode、java
    Java注解Annotation详解
    IOS 基于APNS消息推送原理与实现(JAVA后台)
    IOS学习笔记—苹果推送机制APNs
    linux yum命令详解
  • 原文地址:https://www.cnblogs.com/cfas/p/4049519.html
Copyright © 2011-2022 走看看