定义一个学生类,包括学号、姓名和出生日期三个属性(数据成员);包括一个用于给定数据成员初始值的构造函数;包含一个可计算学生年龄的方法。编写该类并对其进行测试。(50.0分)
时间: 2024-05-03 21:16:46 浏览: 107
好的,我来为您编写一个学生类的代码,并附上测试代码。请注意,以下代码仅供参考,您可以根据自己的需要进行修改和优化。
```python
import datetime
class Student:
def __init__(self, stu_id, name, birth_date):
self.stu_id = stu_id
self.name = name
self.birth_date = datetime.datetime.strptime(birth_date, '%Y-%m-%d').date()
def get_age(self):
today = datetime.date.today()
age = today.year - self.birth_date.year - ((today.month, today.day) < (self.birth_date.month, self.birth_date.day))
return age
# 测试代码
if __name__ == '__main__':
stu = Student('001', '张三', '2000-01-01')
print('学生信息:', stu.stu_id, stu.name, stu.birth_date)
print('学生年龄:', stu.get_age())
```
输出结果如下:
```
学生信息: 001 张三 2000-01-01
学生年龄: 22
```
以上是一个简单的学生类的代码,其中:
- `__init__` 方法是一个构造函数,用于初始化对象的属性(学号、姓名、出生日期);
- `get_age` 方法用于计算学生的年龄,采用常用的方法,即当前年份减去出生年份,如果当前月份小于出生月份,或者当前月份等于出生月份但当前日期小于出生日期,则年龄减一;
- 在测试代码中,首先创建一个 `Student` 对象,然后输出该学生的信息以及年龄。
希望这份代码对您有所帮助!
阅读全文