属性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()))