用Python(考察知识点为封装,保护属性)

请按照以下要求设计一个Person类: Person类中有带两个参数的构造方法,用于给name和age属性赋值。其中,age属性是私有的; 1)Person类中声明一个给age属性赋值的方法setAge,只有传入的参数大于0且小于120就能赋值; 2)Person类中声明一个获取age属性值的方法getAge,直接返回age的值; 3)创建一个Person类的对象,使用print函数输出对象的信息。

class Person:
    def __init__(self, name, age):
        self.name = name
        self.__age = age
        
    def setAge(self, age):
        if age>0 and age<120:
            self.__age = age
            
    def getAge(self):
        return self.__age

p = Person('a',18)
print(p.name)
print(p.getAge())

p.setAge(80)
print(p.getAge())

 

class Person:

	def __init__(self, name, age):
		self.name = name
		self.__age = age

	def setAge(self, age):
		if age > 0 and age < 120:
			self.__age = age
		else:
			print("年龄不合法")

	def getAge(self):
		return self.__age

if __name__ == '__main__':
	person = Person("小明", 20)
	person.setAge(18)
	print(person.name)
	print(person.getAge())