class property methods getting called only once
limodou
limodou at gmail.com
Mon Dec 4 00:31:50 EST 2006
>On 3 Dec 2006 21:24:03 -0800, jm.suresh at no.spam.gmail.com
<jm.suresh at gmail.com> wrote:
> In the following code, I could not find out why the set and get methods
> are not called once I set the property.
>
>
> >>> class Test:
> ... def __init__(self):
> ... self._color = 12
> ... def _setcolor(self,value):
> ... print 'setting'
> ... self._color = value
> ... def _getcolor(self):
> ... print 'getting'
> ... return self._color
> ... color = property(_getcolor,_setcolor)
> ...
> >>> a = Test()
> >>> a.color
> getting
> 12
> >>> a.color = 22
> >>> a.color
> 22
>
> For some reason the set method is not getting called at all, Anybody
> has any clue?
>
> thanks.
property can only be used in New Style Class. So you should write your Test as:
class Test(object):
And try again.
--
I like python!
UliPad <<The Python Editor>>: http://wiki.woodpecker.org.cn/moin/UliPad
My Blog: http://www.donews.net/limodou
More information about the Python-list
mailing list