设计Teacher类,继承Person类,将Person类的成员变量改为出生日期,再设计age()方法求年龄。
时间: 2023-05-26 09:01:07 浏览: 189
创建学生类Student,继承自SchoolPerson类, 添加额外两个属性:班级class、学号sno。 添加方法:打印学生的所有信息print_info方法。
5星 · 资源好评率100%
A:
```python
class Person:
def __init__(self, birthdate):
self.birthdate = birthdate
class Teacher(Person):
def __init__(self, birthdate):
super().__init__(birthdate)
def age(self):
today = datetime.date.today()
age = today.year - self.birthdate.year
if (today.month, today.day) < (self.birthdate.month, self.birthdate.day):
age -= 1
return age
```
在Person类中,我们只需要一个出生日期属性。在Teacher类中,我们继承了Person类,因此我们只需要调用super()方法来初始化我们从Person类继承的属性。我们还添加了age()方法,该方法将根据出生日期计算年龄,并返回一个整数表示。
阅读全文