Python 两种创建属性方法
Python 两种创建属性方法的例子
返回 property 属性,典型的用法:
# Filename : example.py
# DateTime : 2020-07-20
# author by : www.lidihuo.com
class C:
def __init__(self):
self._x = None
def getx(self):
return self._x
def setx(self, value):
self._x = value
def delx(self):
del self._x
# 使用property类创建 property 属性
x = property(getx, setx, delx, "I'm the 'x' property.")
使用 C 类:
# Filename : example.py
# DateTime : 2020-07-20
# author by : www.lidihuo.com
# 方法1
C().x=1
# 方法2
c=C()
# 属性x赋值
c.x=1
# 拿值
c.getx()
# 删除属性x
c.delx()
# 再属性赋值
c.x=1
c.setx(1)
c.getx()
使用@property装饰器,实现与上完全一样的效果:
# Filename : example.py
# DateTime : 2020-07-20
# author by : www.lidihuo.com
class C:
def __init__(self):
self._x = None
@property
def x(self):
return self._x
@x.setter
def x(self, value):
self._x = value
@x.deleter
def x(self):
del self._x