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
删除年龄数据!

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

相关文章
property 装饰器
property 装饰器自制脑图 property 装饰器,用来将一个 get 方法,转换为对象的属性。 添加为 property 装饰器以后,就可以像调用属性一样使用 get 方法。 使用 property 装饰的方法,必须和属性名是一样的。
83 17
property 装饰器
|
开发者 Python
property 装饰器|学习笔记
快速学习 property 装饰器
117 0
|
C# 编译器 机器人
C#:Attribute与Property
本文介绍了什么是Attribute,Attribute的概念定义,Attribute与Property的区别。 一.什么是Attribute 先看下面的三段代码: 1.
1343 0
Property属性, KVC键值编码OC…
1、属性:帮你自动生成setter 和 getter 方法      属性的声明:(写在.h中)      格式: @property 数据类型 属性名      属性的实现:(写在.m中)      格式: @synthesize 属性名: 例子1: Person.
684 0