python @property

1

@property是python里面很强大的属性方法,可以将类的方法变成属性,
从document选的一个test:
`class C(object):
def init(self):
self._x = None

###2
def getx(self):
return self._x
def setx(self, value):
self._x = value
def delx(self):
del self._x
x = property(getx, setx, delx, “I’m the ‘x’ property.”)
`

3

我们运行:c = C() c.x = 100 y = c.x print y del c.x
我们只用了x这个属性就完成了对象的赋值,对象值传递,删除对象值;
`
class C(object):
def init(self):
self._x = None

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

@x.setter
def x(self, value):
    self._x = value

@x.deleter
def x(self):
    del self._x

`
这段代码效果与上面一样;