标签: ironpython

在Silverlight 2中,DLR语言与C#之间的速度有何不同?

对于Silverlight 2,看起来编程选择是:

  • C#
  • VB
  • DLR脚本语言
    • IronRuby的
    • IronPython的
    • 一个可悲的被忽略(如果没有取消)托管的jScript

这种情况下,本地语言(C#和VB)比DLR语言快一个数量级左右?

当我进行Silverlight客户端编程时,有没有希望在IronPython中"生活",或者我是否应该为处理器密集型工作投入C#?

我对语言的调查来自C#和VB的这组例子以及讨论DLR的这个页面.

c# silverlight ironpython ironruby silverlight-2.0

0
推荐指数
1
解决办法
551
查看次数

运行时的IronPython编译器版本

如何在运行时获取IronPython编译器版本(交互式会话)?

ironpython

0
推荐指数
1
解决办法
1087
查看次数

实例化类时,按用户存储该实例

我必须执行以下操作,当实例化类时,我需要按用户存储该实例.由于我在asp.net工作,我想知道是否应该使用asp.net提供的一些方法来在用户请求之间保留数据.(缓存不能因为数据需要持久且应用程序状态不能因为它需要特定于用户),或者我应该寻找一种方法将该信息存储在类中.它需要持续存在,直到我以编程方式说出来

asp.net ironpython

0
推荐指数
1
解决办法
843
查看次数

如何从C#/ F#调用IronPython函数?

这是C#,F#,IronPython和IronRuby集成的后续问题

为了使用Python的C/C++函数,SWIG是最简单的解决方案.反过来也可以使用Python C API,例如,如果我们有一个python函数,如下所示

def add(x,y):
    return (x + 10*y)

我们可以在C中提出使用此python的包装器,如下所示.

double Add(double a, double b)
{
    PyObject *X, *Y, *pValue, *pArgs;
    double res;

    pArgs = PyTuple_New(2);
    X = Py_BuildValue("d", a);
    Y = Py_BuildValue("d", b);

    PyTuple_SetItem(pArgs, 0, X);
    PyTuple_SetItem(pArgs, 1, Y);
    pValue = PyEval_CallObject(pFunc, pArgs);
    res = PyFloat_AsDouble(pValue);    

    Py_DECREF(X);
    Py_DECREF(Y);
    Py_DECREF(pArgs);
    return res;
}

IronPython/C#甚至F#怎么样?

  • 如何从IronPython调用C#/ F#函数?或者,IronPython/C#中是否有任何SWIG等效工具?
  • 如何从C#/ F#调用IronPython函数?我想我可以使用"engine.CreateScriptSourceFromString"或类似的东西,但我需要找到一种方法来调用IronPython函数看起来像一个C#/ F#函数,不是在字符串中编写代码,而是从文件中读取.

c# f# ironpython

0
推荐指数
1
解决办法
1592
查看次数

为什么我的IronPython控制台会这样做?

当我喜欢编程时,我使用IronPython控制台,但它做了一些古怪的东西.例如:

If a=("X")
Run Code Online (Sandbox Code Playgroud)

它说"意外的令牌'=.' 或这个:

If a is ("X"):
    print ("Y")
else:
    print ("Z")
Run Code Online (Sandbox Code Playgroud)

但它应该在那之后结束,它仍然在"......".为什么?

python ironpython

0
推荐指数
1
解决办法
193
查看次数

Python pickle的替代品吗?

当我尝试使用pickle加载转储文件时,python崩溃了代码CLR20r3 !! 我想知道是否有任何pickle替代品,可以转储python对象并加载回来.第三方库是可以接受的.

python ironpython object pickle

0
推荐指数
1
解决办法
1727
查看次数

更换和剥离功能

我试图创建一个函数来替换给定字符串中的一些值,但我收到以下错误: EOL while scanning single-quoted string.

不确定我做错了什么:

 def DataClean(strToclean):
        cleanedString = strToclean
        cleanedString.strip()
        cleanedString=  cleanedString.replace("MMMM/", "").replace("/KKKK" ,"").replace("}","").replace(",","").replace("{","")
        cleanedString = cleanedString.replace("/TTTT","")
        if cleanedString[-1:] == "/":
           cleanedString = cleanedString[:-1]

        return str(cleanedString)
Run Code Online (Sandbox Code Playgroud)

python ironpython

0
推荐指数
1
解决办法
331
查看次数

意思是什么 - "IronPython是Python编程语言的一种实现"

我知道问题看起来是广泛和主观的,但我对IronPython的这个定义无处不在 - " IronPython是Python编程语言的实现 "如果有任何SO帖子准确回答这个问题,请随意将其标记为重复.

到目前为止,我对此的理解是:

1)Iron python只是用C#编写的托管库(IronPython.dll)并使用CLR

2)Iron python托管代码在内部使用标准Python库(作为Iron Python的一部分安装)来使用DLR弥补差距.

这里的任何python代码的实际执行运行时间是多少?是Python解释器吗?这个解释器是否在不同的进程中运行?

3)IronPython.dll公开api以与任何其他.net语言集成python代码.

我确信某些地方我的理解是不正确的 - " IronPython是Python编程语言的一种实现 "因为从这看起来像Python语言是一种契约,它规定了你如何编写检查条件if condition和实现者如铁python照顾将其转换为IL代码.是这样的吗?

感谢任何帮助或指针.

c# python ironpython dynamic-language-runtime language-design

0
推荐指数
1
解决办法
341
查看次数

通过定义新类访问列表名称,错误:NamedList 实例没有属性 '__len__'

我对 python 很陌生,所以我创建了一个元素列表,如:

main_list = [1,2,3]
Run Code Online (Sandbox Code Playgroud)

我希望这个列表有一个名字,但我不想使用字典,所以我创建了一个以名字作为属性的类:

class NamedList:
     def __init__(self, name, obj)
          self.name = name
          self.object = obj
Run Code Online (Sandbox Code Playgroud)

当我尝试访问第一个列表的长度时:

len(main_list)   #works fine
Run Code Online (Sandbox Code Playgroud)

但对于第二个,它给了我这个

错误:NamedList 实例没有属性“ len ”:

new_main_list = NamedList('numbers', main_list)
len(new_main_list)      #This line gives me the error
Run Code Online (Sandbox Code Playgroud)

我想知道为什么 List 类的基本属性对我的类不可用?我所有的实例最初都是一个 List 实例。

提前致谢

python ironpython class list

0
推荐指数
1
解决办法
67
查看次数