python 对象属性
使用类@property可以使类方法转换为只读属性,同时可以定义设置,获取,删除的方法
class Goods(object): def __init__(self): # 原价 self.original_price = 100 # 折扣 self.discount = 0.8 @property def price(self): # 实际价格 = 原价 * 折扣 new_price = self.original_price * self.discount return new_price @price.setter def price(self, value): self.original_price = value @price.getter def price(self): return self._price #访问property修饰的price类返回值,可以使用self._price访问,这是python约定的修饰私有化属性或方法的方式,这种单前置下划线的属性或方法,不能通过模块导入 @price.deleter def price(self): del self.original_price obj = Goods() obj.price # 获取商品价格 obj.price = 200 # 修改商品原价 del obj.price # 删除商品原价,删除执行的的是@price.deleter修饰的函数
                    
                
                
            
        
浙公网安备 33010602011771号