What's the pythonic way to use getters and setters?


Question

I'm doing it like:

def set_property(property,value):  
def get_property(property):  

or

object.property = value  
value = object.property

I'm new to Python, so i'm still exploring the syntax, and i'd like some advice on doing this.

1
285
4/13/2010 4:41:54 AM

Try this: Python Property

The sample code is:

class C(object):
    def __init__(self):
        self._x = None

    @property
    def x(self):
        """I'm the 'x' property."""
        print("getter of x called")
        return self._x

    @x.setter
    def x(self, value):
        print("setter of x called")
        self._x = value

    @x.deleter
    def x(self):
        print("deleter of x called")
        del self._x


c = C()
c.x = 'foo'  # setter called
foo = c.x    # getter called
del c.x      # deleter called
629
1/4/2018 7:37:30 PM

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon