#getter、setter方法
class Person:
def __init__(self):
self.name=""
self.__age="" #私有属性
self.__sex = ""
#通过方法使用私有属性
def setAge(self,age):
if age>0 and age<130:
self.__age=age
else:
self.__age=0
def getAge(self):
return self.__age
#通过装饰器使用私有属性-伪属性
@property #getxxx()添加装饰器"property"(必须先有property)
def sex(self): #方法名就是属性名
return self.__sex
@sex.setter #setxxx()添加装饰器“属性名.setter”
def sex(self,sex): #方法名就是属性名
if sex=="男" or sex=="女":
self.__sex=sex
else:
self.__sex="男"
p=Person()
p.name="张三"
p.setAge(20)
p.sex="男"
print(p.name,p.getAge(),p.sex)
【Python】getter\setter装饰器
最新推荐文章于 2023-03-06 20:10:06 发布