有没有办法将数字类型的扩展方法导入IronPython代码?

时间:2012-03-14 19:30:43

标签: c# extension-methods ironpython

我想将已编译的C#程序集中的数字扩展名导入IronPython代码。各种扩展方法似乎都可以导入,但不能输入数字类型。

我已定义了int,double和float扩展,但像50.Seconds()这样的代码会产生意外的令牌(秒)错误。是否有任何解决方法来添加数字类型扩展名?

2 个答案:

答案 0 :(得分:3)

(1).__index__()

可能有用。当你把括号括起来时,它是语言的一部分。我现在无法检查IronPython:)

答案 1 :(得分:2)

在文字上调用方法不是Python语言的一部分:

>>> x = 1
>>> 1.conjugate()
  File "<stdin>", line 1
    1.conjugate()
          ^
SyntaxError: invalid syntax
>>> x.conjugate()
1
>>>

扩展方法应该适用于变量,而不是文字。