你有一个包含学生姓名、学号和成绩的信息列表,每个学生的信息以元组的形式存储(姓名,学号,成绩)。你需要编写一个Python程序来统计并输出以下内容: 1.所有学生的平均成绩。 2.成绩最高的学生的姓名和成绩。 3.成绩低于平均分的学生名单。
时间: 2024-10-09 13:03:36 浏览: 38
students_show(学生信息数据模拟,分别以元组、姓名和学号为key存储dict).zip
你可以使用Python的内置函数和列表推导式来实现这个需求。首先,我们需要创建一个包含学生信息的元组列表。然后,我们可以按照以下步骤来完成:
```python
# 假设学生信息列表
students = [
("张三", "001", 85),
("李四", "002", 92),
("王五", "003", 78),
# 更多学生...
]
# 1. 计算平均成绩
total_score = sum(score for _, _, score in students)
average_score = total_score / len(students)
print(f"所有学生的平均成绩是: {average_score}")
# 2. 找到成绩最高的学生
max_student = max(students, key=lambda x: x[2])
max_name = max_student[0]
max_score = max_student[2]
print(f"成绩最高的学生是{max_name},成绩为: {max_score}")
# 3. 找出成绩低于平均分的学生
below_average = [student for student in students if student[2] < average_score]
print("成绩低于平均分的学生有:")
for student in below_average:
print(student)
阅读全文