How to use a class property to store function variables?

Terry Reedy tjreedy at udel.edu
Wed Apr 28 03:26:57 CEST 2010


On 4/27/2010 7:36 PM, GZ wrote:
> I want to store a reference to a function into a class property.
>
> So I am expecting that:
>
> class A:
>       fn = lambda x: x
>
> fn = A.fn
> fn(1)
>
> Traceback (most recent call last):
>    File "<string>", line 1, in<string>
> TypeError: unbound method<lambda>() must be called with A instance as
> first argument (got int instance instead)
>
>
> The problem is that A.fn is treated as a bounded method. I really want
> A.fn to be a variable that stores a reference to a function. Is there
> any way to achieve this?

Use 3.1, though you will have the same issue when calling it and same 
fix that Chris gave.

Terry Jan Reedy






More information about the Python-list mailing list