python定义⼀个学⽣类,包括学号、姓名和出⽣⽇期三个属性(数据成员),包括 ⼀个⽤于给定数据成员初始值的构造函数,包含⼀个可计算学⽣年龄的⽅法, 编写该类并对其进⾏测试。
时间: 2024-03-10 18:49:40 浏览: 92
好的,以下是实现该学生类的代码:
```python
import datetime
class Student:
def __init__(self, student_id, name, birthday):
self.student_id = student_id
self.name = name
self.birthday = birthday
def calculate_age(self):
today = datetime.date.today()
birthdate = datetime.datetime.strptime(self.birthday, '%Y-%m-%d').date()
age = today.year - birthdate.year - ((today.month, today.day) < (birthdate.month, birthdate.day))
return age
# 测试代码
student = Student('001', '张三', '1999-01-01')
print('学生姓名:', student.name)
print('学生年龄:', student.calculate_age())
```
在上述代码中,我们定义了一个 `Student` 类,它具有三个属性:`student_id`、`name` 和 `birthday`,分别表示学号、姓名和出生日期。我们在构造函数 `__init__` 中定义了这三个属性,并且通过一个参数列表来给这三个属性赋初始值。
除了属性之外,我们还定义了一个 `calculate_age` 方法,用于计算学生的年龄。该方法使用 Python 的 `datetime` 模块来获取当前日期和学生的出生日期,并计算两者之间的差值,以得出学生的年龄。
最后,我们在测试代码中创建了一个 `Student` 对象,并打印出了学生的姓名和年龄。
阅读全文