property属性的使用
property可以将类中的方法变为属性使用
1 .以装饰器方式使用
class Student(object):
def __init__(self):
#
self.__age = 0
@property#当对象调用age属性的时候会执行下面的方法
def age(self):
return self.__age
@age.setter
def age(self,newage):
if newage>=0 and newage<=130:
self.__age = newage
else:
print("年龄不符合要求")
student = Student()
age = student.age
print(age)
student.age = 20
age = student.age
print(age)
"""
输出:
0
20
"""
2.以类属性方式调用
class Student(object):
def __init__(self):
#私有属性
self.__age = 0
def get_age(self):
return self.__age
def set_age(self,new_age):
if new_age>=0 and new_age<=130:
self.__age = new_age
else:
print('123')
age=property(get_age,set_age)
student = Student()
print(student.age)
student.age = 20
print(student.age)
"""
输出:
0
20
"""