[python] Getters and Setters.

David Michal dmichal na altien.com
Sobota Červen 21 19:20:22 CEST 2008


Aha, tak mou neznalosti bylo, ze jsem nevedel o "property".
Ale stejne mi to neni uplne jasne.

V tomto prikladu:

> class C(object):
>     def __init__(self):
>         self._x = 0;
> 
>     def magic(self):
>         self.x = self.x * 10
> 
>     def get_x(self):
>         return(self._x)
> 
>     def set_x(self, value):
>         if value >= 0:
>              self._x = value * 2
>         else:
>              self._x = 0
> 
>     x = property(get_x, set_x)

Ta promena x je pak promenou tridy, nebo instance? Co se stane kdyz
upravim __init__ takto:
def __init__(self):
    self.x = 0
    self.x = property(self.get_x, self.set_x)




Další informace o konferenci Python