标签: ironpython

IronPython表现

我正在考虑将IronPython作为脚本语言嵌入我正在编写的应用程序中.所以为了试一试,我下载了IronPython 2.0并启动了交互式解释器.刚开始使用我的英特尔四核处理器需要大约5秒钟,内存为6 Gigs.我很难想象这对于功能较弱的机器会有多大的延迟.

基于这些基准测试,似乎IronPython的表现实际上并不是太糟糕.或者是吗?我在安装过程中错误配置了什么?或者这是交互式解释器的问题?

.net performance ironpython

7
推荐指数
1
解决办法
3232
查看次数

CPython或IronPython?

您将使用什么来建立全新的跨平台GUI应用程序CPython或IronPython?

那么
- 许可证/自由
- 开发
- - 文档
- 编辑器
- 工具
- 库
- 性能
- 可移植性

你能用哪一个做得最好?
- 网络
- 数据库
- GUI
- 系统
- 多线程/处理

python ironpython cpython

7
推荐指数
1
解决办法
4739
查看次数

CPython,IronPython,Jython脚本是否相互兼容?

我很确定python脚本可以在所有三个中运行,但我想确定.我已经在这里和那里阅读过可以编写CPython,Jython,IronPython的编辑,我希望我能够深入了解这一区别.

我的情况是我有3种不同的api,我想测试.每个api执行相同的功能代码,但它们在实现上是不同的.我正在为每种语言的api编写包装器.每个包装器都应该使用Boost :: python,Jython和IronPython向python公开完全相同的功能和实现.

我的问题是,使用这些公开的方法编写的python脚本(每种语言都很常见)是否适用于Python的所有三种"风格"?

就像我说的那样,我很确定答案是'当然',但我需要确保在花费太多时间进行研究之前.

python testing ironpython jython boost-python

7
推荐指数
1
解决办法
1104
查看次数

代码执行速度:IronPython vs C#?

我试图提供从管理者的角度对问题的回答:如果我们写在IronPython的,而不是C#应用程序,我们将承担什么整体性能损失?

这个问题针对那些可能已经进行过一些测试,基准测试或已经完成从C#迁移到IronPython的人,以量化惩罚.

ironpython

7
推荐指数
2
解决办法
7524
查看次数

为IronRuby和IronPython做案例

我想每个人都已经听说过一些关键开发人员离开Dynamic Languages团队的消息,因为他们认为微软对Dynamic Languages的支持逐渐减弱.

我非常喜欢Python,并经常尝试使用它.所以,通过扩展,我关心IronPython,并希望看到它继续发展.我相信很多人对IronRuby也有同感.但我仍然无法弄清楚的是.NET开发人员为什么要关心IronRuby和IronPython?

如果你写信给微软要求他们继续支持和开发DLR和Iron语言,你会使用什么参数?

如果您说服您的雇主让开发人员有时间为尚未制作的社区支持的IronPython或IronRuby版本做出贡献,那么您将如何在业务价值方面对其进行合理化?

下面是我能想出一些有趣的使用情况,但如果我在那里经理琢磨上面的问题,我可能不会发现它们是令人信服的:

  1. 更大的应用程序中的嵌入式脚本语言:一个有效的用例,但它似乎是大多数开发人员的利基场景.
  2. 测试和测试自动化:特别是Ruby拥有丰富的精细测试工具和库,并且通过IronRuby将它们用于.NET会很不错.但似乎等效的.NET库填补了这一空白,例如SpecFlow和Selenium的WebDriver.
  3. 在Microsoft Stack上运行现有框架:如果IronRuby允许Ruby on Rails在带有IIS和MS SQL的Windows上运行,这可能会鼓励已在Microsoft堆栈上标准化的商店采用RoR.

谁能想到更好的东西?

ironpython ironruby dynamic-language-runtime dynamic-languages

7
推荐指数
1
解决办法
564
查看次数

关于Xamarin的IronPython

我在使用Xamarin.Android应用程序运行IronPython时遇到了困难.Xamarin声称他们的DLR支持有限.

我在我的电脑上安装了最新版本的Iron Python.在Xamarin Studio的Xamarin.Android项目中,我添加了对<IPY Install Dir>\Platforms\Android*.dll的引用.

当我编译时,我得到......

    C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(2,2): Error: Exception while loading assemblies: System.IO.FileNotFoundException: Could not load assembly 'Microsoft.Scripting, Version=1.1.0.20, Culture=neutral, PublicKeyToken=7f709c5b713576e1'. Perhaps it doesn't exist in the Mono for Android profile?

File name: 'Microsoft.Scripting.dll'

   at Monodroid.Tuner.MonoDroidResolver.Resolve(AssemblyNameReference reference, ReaderParameters parameters)

   at Xamarin.Android.Tasks.ResolveAssemblies.AddAssemblyReferences(List`1 assemblies, AssemblyDefinition assembly)

   at Xamarin.Android.Tasks.ResolveAssemblies.Execute() (IPYScripter)
Run Code Online (Sandbox Code Playgroud)

如果Xamarin.Android有Iron Python支持,我该如何实现呢?我的应用程序的目标是让用户能够创建和运行IPY脚本.

android ironpython xamarin

7
推荐指数
1
解决办法
2504
查看次数

是否有可能在.NET应用程序中运行python?

在.NET应用程序中,可以将文本文件或数据库中的C#代码保存为字符串并动态运行.这种方法在许多情况下很有用,例如业务规则引擎或用户定义的计算引擎等.这是一个很好的例子:

using System;
using System.Collections.Generic;
using System.Linq;
using Microsoft.CSharp;
using System.CodeDom.Compiler;

class Program
{
    static void Main(string[] args)
    {
        var csc = new CSharpCodeProvider(new Dictionary<string, string>() { { "CompilerVersion", "v3.5" } });
        var parameters = new CompilerParameters(new[] { "mscorlib.dll", "System.Core.dll" }, "foo.exe", true);
        parameters.GenerateExecutable = true;
        CompilerResults results = csc.CompileAssemblyFromSource(parameters,
        @"using System.Linq;
            class Program {
              public static void Main(string[] args) {
                var q = from i in Enumerable.Range(1,100)
                          where i % 2 == 0
                          select i;
              }
            }");
        results.Errors.Cast<CompilerError>().ToList().ForEach(error => …
Run Code Online (Sandbox Code Playgroud)

.net c# python ironpython dynamic

7
推荐指数
1
解决办法
3888
查看次数

如何从IronPython更新WPF DataGrid行的值?

我有一个简单的WPF应用程序.这是WPF代码

<Window 
       xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
       xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
       Title="WpfApplication3" Height="300" Width="300"> 
       <Grid>
        <DataGrid x:Name="dg" Margin="0" Height="149" Width="136">
            <DataGrid.Columns>
                <DataGridTextColumn Binding="{Binding value}" ClipboardContentBinding="{x:Null}"/>
            </DataGrid.Columns>
        </DataGrid>
        <Button x:Name="button" Content="Button" HorizontalAlignment="Left" Margin="109,230,0,0" VerticalAlignment="Top" Width="75" Click="button_Click"/>
    </Grid>
</Window>
Run Code Online (Sandbox Code Playgroud)

这是python代码:

import wpf

from System.Windows import Application, Window, MessageBox
from time import sleep

class MyWindow(Window):
    def __init__(self):
        self.value = Value()
        wpf.LoadComponent(self, 'WpfApplication3.xaml')

        self.dg.Items.Add(self.value)

    def button_Click(self, sender, e):
        self.value.increment()
        MessageBox.Show(str(self.value.value))

class Value:
    def __init__(self):
        self.value = 1

    def increment(self):
        self.value += 1

if __name__ == '__main__':
    Application().Run(MyWindow())
Run Code Online (Sandbox Code Playgroud)

我期望的行为是,在单击按钮时,DataGrid中的值应该更新.当我启动应用程序时,一个条目在列中的值为1,但它不会在按钮单击时更新.MessageBox确认正在更新该值,但DataGrid未看到该值已更新.我哪里错了?

python wpf ironpython

7
推荐指数
1
解决办法
916
查看次数

.NET Core的脚本语言选项

我正在为.NET Core 1.0和UWP编写一个应用程序,我希望在其中嵌入脚本引擎以允许最终用户脚本编写(有点像Excel中的VBA).

哪些脚本选项在技术上可用于.NET Core和UWP应用程序?

我的第一个想法是IronPython.我在.NET 4.0应用程序中非常成功地使用它,包括在最终用户IronPython脚本中使用暴露的.NET API.我认为python也是大多数用户(平易近人的语言)的不错选择.但是,看起来IronPython已经有几年没有更新了,我最近没有看到有关它可以在.NET Core或UWP上运行的新闻.

我的第二个想法是Roslyn,但似乎UWP应用程序中不允许使用脚本引擎.

我的第三个想法是像Lua或Boo这样的开源脚本语言,但是我找不到关于使用.NET Core或UWP中的这些(或类似的)之一的可行性的具体信息.

任何建议将不胜感激.

scripting ironpython roslyn .net-core uwp

7
推荐指数
0
解决办法
1275
查看次数

Visual Studio - "环境ironpython 2.7-32似乎配置错​​误或丢失"

Windows 10 64位上的VS2017 Pro.

错误的步骤: print('Hello world')

这会加载默认程序:print('Hello world').当我运行它时,我得到了错误.

我去了VS Installer,Individual Components选项卡,Compilers部分,并检查了Python 2.7和3.6选项.我还是遇到了问题

python ironpython visual-studio python-2.7

7
推荐指数
1
解决办法
1万
查看次数