首页 > 编程语言 > 详细

python中的@property

时间:2018-01-20 19:31:41      阅读:217      评论:0      收藏:0      [点我收藏+]

@property 可以将python定义的函数“当做”属性访问,从而提供更加友好访问方式,但是有时候setter/getter也是需要的

class People:
    def __init__(self,name,weight,height):
        self.__name=name
        self.weight=weight
        self.height=height
    @property
    def bmi(self):
        return self.weight / (self.height**2)
    @bmi.deleter
    def bmi(self):
        del self.__name

p1=People(wang,67,1.7)
del p1.bmi
print(p1.__name)

@bmi.deleter相当于一个接口,想要直接删除私有属性是不可以的,要有这么一个接口.删除私有属性

说明:同一属性的三个函数名要相同。(例子中都是bim)

 

@bmi.setter是修改

def bmi(self,新的参数)

 

python中的@property

原文:https://www.cnblogs.com/wanglongtai/p/8321641.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!