、编写 个程序,定义 学生类(Student).数据成员包括学号、姓名、性别和年龄,函数set)初始化学号.姓名、性别和年龄。show0输出学生的学号、姓名、性别和年龄,在主函数中定义对象数组,并实现输入5个学生的学号.姓名、性别和年龄,按年龄从大到小进行排序输出.
时间: 2023-05-20 14:01:08 浏览: 96
编写程序,设计一个学生类Student和它的子类Undergraduate
以下是实现上述功能的代码:
```python
class Student:
def __init__(self, id, name, gender, age):
self.id = id
self.name = name
self.gender = gender
self.age = age
def show(self):
print("学号:{}\n姓名:{}\n性别:{}\n年龄:{}".format(self.id, self.name, self.gender, self.age))
students = []
for i in range(5):
id = input("请输入第{}个学生的学号:".format(i+1))
name = input("请输入第{}个学生的姓名:".format(i+1))
gender = input("请输入第{}个学生的性别:".format(i+1))
age = int(input("请输入第{}个学生的年龄:".format(i+1)))
student = Student(id, name, gender, age)
students.append(student)
students.sort(key=lambda x: x.age, reverse=True)
print("按年龄从大到小排序后的学生信息:")
for student in students:
student.show()
```
运行结果如下:
```
请输入第1个学生的学号:001
请输入第1个学生的姓名:张三
请输入第1个学生的性别:男
请输入第1个学生的年龄:20
请输入第2个学生的学号:002
请输入第2个学生的姓名:李四
请输入第2个学生的性别:女
请输入第2个学生的年龄:22
请输入第3个学生的学号:003
请输入第3个学生的姓名:王五
请输入第3个学生的性别:男
请输入第3个学生的年龄:18
请输入第4个学生的学号:004
请输入第4个学生的姓名:赵六
请输入第4个学生的性别:女
请输入第4个学生的年龄:21
请输入第5个学生的学号:005
请输入第5个学生的姓名:钱七
请输入第5个学生的性别:男
请输入第5个学生的年龄:19
按年龄从大到小排序后的学生信息:
学号:002
姓名:李四
性别:女
年龄:22
学号:004
姓名:赵六
性别:女
年龄:21
学号:001
姓名:张三
性别:男
年龄:20
学号:005
姓名:钱七
性别:男
年龄:19
学号:003
姓名:王五
性别:男
年龄:18
```
阅读全文