1
55
Ironpython类是 不 NET类。它们是Ironpython.runtime.types.pythontype的实例,后者是python元类。这是因为Python类是动态的,并且支持在运行时添加和删除方法,而这是您不能用.NET类做的。 要在C中使用python类,您需要使用objectOperations类。这个类允许您在语言本身的语义中对Python类型和实例进行操作。例如,它在适当的时候使用魔术方法,自动将整数提升为长整数等。您可以通过查看源代码或使用Reflector了解更多关于对象操作的信息。 下面是一个例子。calculator.py包含一个简单类:
您可以从.NET 4.0之前的代码中使用它,如下所示:
您需要引用程序集ironpython.dll、microsoft.scripting和microsoft.scripting.core。 C 4使用 新的 动态类型。
如果您将Visual Studio 2010或更高版本与Nuget支持结合使用,只需执行此操作即可下载并引用相应的库。
|
2
31
既然.NET 4.0已经发布并且具有动态类型,那么应该更新这个示例。使用与M-Sharp原始答案相同的python文件:
以下是使用.NET 4.0的方法:
同样,您需要添加对ironpython.dll和microsoft.scripting的引用。 如您所见,源文件的初始设置和创建是相同的。 但是,一旦源代码成功执行,使用python函数就更容易了,这要归功于新的“dynamic”关键字。 |
3
0
我正在更新聪明人为编译后的Ironpython类(dll)提供的上述示例,而不是.py文件中的Ironpython源代码。
新动态类型的C 4.0代码如下:
参考文献: |
4
-4
我搜索了高低,恐怕没有太多与此相关的信息。我非常肯定,没有人设计出一种方法,以你希望的干净方式来做到这一点。
我认为这是一个问题的主要原因是为了看到
|
Ben · 更改按钮上的内容模板单击Wpf 7 年前 |
Ben · IronPython+Wpf上的按钮单击事件 7 年前 |
Wayne Werner · IronPython+Mono错误-无法加载签名 11 年前 |