属性property

2019-12-23  本文已影响0人  wangyu2488

2019年11月27日
一.推荐写法

class Animal(object):
    """定义动物类"""
    def __init__(self, age, sex=1, weight=0.0):
        self.age = age  # 定义年龄实例成员变量
        self.sex = sex  # 定义性别实例成员变量
        self.__weight = weight  # 定义体重实例成员变量
    @property
    def weight(self):  # 替代get_weight(self):
        return self.__weight
    @weight.setter
    def weight(self, weight):  # 替代set_weight(self, weight):
        self.__weight = weight

a1 = Animal(2, 0, 10.0)
print('a1体重:{0:0.2f}'.format(a1.weight))
a1.weight = 123.45  # a1.set_weight(123.45)
print('a1体重:{0:0.2f}'.format(a1.weight))

二.写法

class Animal(object):
    """定义动物类"""
    def __init__(self, age, sex=1, weight=0.0):
        self.age = age  # 定义年龄实例成员变量
        self.sex = sex  # 定义性别实例成员变量
        self.__weight = weight  # 定义体重实例成员变量
    def get_weight(self):
        return self.__weight
    def set_weight(self, weight):
        self.__weight = weight

a1 = Animal(2, 0, 10.0)
print('a1体重:{0:0.2f}'.format(a1.get_weight()))
a1.set_weight(123.45)
print('a1体重:{0:0.2f}'.format(a1.get_weight()))
上一篇 下一篇

猜你喜欢

热点阅读