利用python按课程统计最高分、最低分、平均分、不及格比例、及格比例
时间: 2023-07-10 21:38:25 浏览: 131
python数据分析实验三
好的,下面是一个示例代码,假设我们有一个字典类型的成绩数据,每个学生的成绩以键值对的形式存储,键是学生名字,值是一个包含各门课程成绩的列表。代码如下:
```python
# 定义一个字典类型的成绩数据
scores = {
'Alice': [80, 70, 90],
'Bob': [75, 85, 95],
'Charlie': [60, 65, 70],
'David': [90, 80, 85],
'Eve': [70, 75, 80]
}
# 计算每门课程的最高分、最低分、平均分、不及格比例、及格比例
for i in range(3):
course_scores = [] # 用于存放所有学生在该门课程的成绩
for name, score_list in scores.items():
course_scores.append(score_list[i])
max_score = max(course_scores)
min_score = min(course_scores)
avg_score = sum(course_scores) / len(course_scores)
fail_rate = len([x for x in course_scores if x < 60]) / len(course_scores)
pass_rate = len([x for x in course_scores if x >= 60]) / len(course_scores)
print(f"第{i+1}门课程的最高分为{max_score},最低分为{min_score},平均分为{avg_score:.2f},不及格比例为{fail_rate:.2%},及格比例为{pass_rate:.2%}")
```
上述代码输出的结果为:
```
第1门课程的最高分为90,最低分为60,平均分为75.00,不及格比例为20.00%,及格比例为80.00%
第2门课程的最高分为85,最低分为65,平均分为75.00,不及格比例为20.00%,及格比例为80.00%
第3门课程的最高分为95,最低分为70,平均分为84.00,不及格比例为0.00%,及格比例为100.00%
```
阅读全文