Python的property属性的功能是:property属性内部进行一系列的逻辑计算,最终将计算结果返回。
使用property修饰的实例方法被调用时,可以把它当做实例属性一样
property的用法1——装饰器方式
在类的实例方法上应用@property装饰器
class Test:
def __init__(self):
self.__num = 100
@property
def num(self):
print("--get--")
return self.__num
@num.setter
def num(self, num):
print("--set--")
self.__num = num
t = Test()
print(t.num)
t.num = 1
"""
--get--
100
--set--
"""
property属性的定义和调用要注意一下几点:
property的用法2——类属性方式
当使用类属性的方式创建property属性时,经典类和新式类无区别
class Test:
def __init__(self):
self.__num = 100
def setNum(self, num):
print("--set--")
self.__num = num
def getNum(self):
print("--get--")
return self.__num
# 注意:要先写get方法,再写set方法
aa = property(getNum, setNum)
t = Test()
print(t.aa)
t.aa = 1
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持亿速云。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。