36-@property装饰器

简介: Python

@property装饰器
Python内置的@property装饰器可以把类的方法伪装成属性调用的方式 。
class People:
def init(self, name, age):
self.__name = name
self.__age = age

@property
def age(self):

return self.__age

@age.setter
def age(self, age):

if isinstance(age, int):
    self.__age = age
else:
    raise ValueError

@age.deleter
def age(self):

print("删除年龄数据!")

obj = People(“jack”, 18)
print(obj.age)
obj.age = 19
print("obj.age: ", obj.age)
del obj.age

打印结果:
18
obj.age: 19
删除年龄数据!

将一个方法伪装成为属性后,就不再使用圆括号的调用方式了。而是类似变量的赋值、获取和删除方法了。当然,每个动作内部的代码细节还是需要你自己根据需求去实现的。

相关文章
|
2月前
|
iOS开发 MacOS
TypeError: Cannot read property ‘shop‘ of undefined
TypeError: Cannot read property ‘shop‘ of undefined
23 0
|
7月前
|
JSON Java 数据格式
SpringMVC-@RequestMapping的参数和用法
SpringMVC-@RequestMapping的参数和用法
89 0
property 装饰器
property 装饰器自制脑图 property 装饰器,用来将一个 get 方法,转换为对象的属性。 添加为 property 装饰器以后,就可以像调用属性一样使用 get 方法。 使用 property 装饰的方法,必须和属性名是一样的。
57 17
property 装饰器
|
JavaScript 前端开发
|
Java
groovy下的field和property
groovy下的field和property
208 0
|
Python
Python property 装饰器 和 setter 饰器
Python get方法的 property 装饰器 和 set方法的 setter 方法装饰器
125 0
|
开发者 Python
property 装饰器|学习笔记
快速学习 property 装饰器