用Python编写:定义一个学生类,包括学号、姓名和出生日期三个属性(数据成员);包括一个用于给定数据成员初始值的构造函数;包含一个可计算学生年龄的方法。编写该类并对其进行测试。
时间: 2024-03-05 10:51:07 浏览: 77
好的,以下是用Python编写的学生类代码:
```python
import datetime
class Student:
def __init__(self, student_id, name, birthdate):
self.student_id = student_id
self.name = name
self.birthdate = datetime.datetime.strptime(birthdate, '%Y-%m-%d')
def calculate_age(self):
today = datetime.date.today()
age = today.year - self.birthdate.year - ((today.month, today.day) < (self.birthdate.month, self.birthdate.day))
return age
# 测试代码
student = Student('001', '张三', '2001-01-01')
print(student.student_id)
print(student.name)
print(student.birthdate)
print(student.calculate_age())
```
在上面的代码中,我们定义了一个名为`Student`的类,它有三个属性:`student_id`、`name`和`birthdate`,分别表示学号、姓名和出生日期。我们在构造函数中初始化了这三个属性,并将出生日期转换为`datetime`类型以便于后续计算年龄。同时,我们还定义了一个`calculate_age`方法,用于计算学生的年龄。
在测试代码中,我们创建了一个`Student`对象,并打印出了它的学号、姓名、出生日期和年龄。
运行上述代码,将会得到如下输出:
```
001
张三
2001-01-01 00:00:00
20
```
这表明我们的代码运行正常,并且能够正确地计算学生的年龄。
阅读全文