[IronPython] Lamba Expressions in IronPython
Michael Foord
fuzzyman at voidspace.org.uk
Sun Apr 6 17:03:21 PDT 2008
Ben Hall wrote:
> Hi everyone,
>
> Just been playing around with C# and IronPython interop and I wanted
> to define a lambda expression.
>
> My CLR object is just a wrapper around a generic list (as generics
> aren't supported?)
>
> public class GenericWrapper : List<int>
> {}
>
> I tried to do a lamba expression to pull back a item from the
> collection, however I got the following exception:
>
>>>> i = GenericWrapper()
>>>> i.Add(1)
>>>> i.Add(2)
>>>> i.Add(3)
>>>> v = i.Find(item => item == 1)
>>>>
> File "", line 1
> v = i.Find(item => item == 1)
>
lambda item: item == 1
In general, arbitrary C# syntax doesn't "just work" with IronPython and
you have to stick to Python syntax. ;-)
(However, if "Find" expects a particular type of delegate you may have
to use CallTarget0 or create a delegate).
Michael
http://www.ironpythoninaction.com
> ^
> SyntaxError: unexpected token '>'
>
> I guess I can use a method\delegate like in C# 2.0, but is there any
> way to do anything like Lamba Expressions? Or is there something
> similar in Python?
>
> Any help would be great.
>
> Thanks
>
> Ben
> Blog.BenHall.me.uk
> _______________________________________________
> Users mailing list
> Users at lists.ironpython.com
> http://lists.ironpython.com/listinfo.cgi/users-ironpython.com
>
More information about the Users
mailing list