主观题10分 ·创建一个名为analyze_grades的函数, 接受一个成绩列表 作为参数。 函数应该: 对每个有效成绩(0-100分) 进行等级评定并打印。 计算并打印班级平均成绩。 统计并打印
时间: 2024-09-25 18:12:20 浏览: 45
一个oracle指令的好网站
主观题10分,让我们来定义一个名为`analyze_grades`的函数,它接收一个包含学生分数的列表作为输入。这个函数的主要任务包括:
1. **等级评定**:对于有效的成绩(0-100分),我们可以使用常见的等级划分标准,比如:
- A: 90分及以上
- B: 80-89分
- C: 70-79分
- D: 60-69分
- F: 60分以下
2. **平均成绩计算**:遍历列表,累加所有成绩然后除以总人数。
3. **统计和打印**:记录各个等级的学生数量,并将结果打印出来。
下面是一个简单的Python函数实现示例:
```python
def analyze_grades(scores):
grades_distribution = {
'A': 0,
'B': 0,
'C': 0,
'D': 0,
'F': 0,
}
total_score = 0
valid_scores = 0
for score in scores:
if 0 <= score <= 100:
grade = 'F'
if score >= 90:
grade = 'A'
elif score >= 80:
grade = 'B'
elif score >= 70:
grade = 'C'
elif score >= 60:
grade = 'D'
grades_distribution[grade] += 1
total_score += score
valid_scores += 1
average_score = total_score / valid_scores if valid_scores > 0 else None
print("等级分布:")
for grade, count in grades_distribution.items():
print(f"{grade}: {count}人")
print(f"班级平均成绩: {average_score:.2f}" if average_score is not None else "未计算到平均成绩")
# 示例使用
grades = [85, 92, 78, 45, 100, 67]
analyze_grades(grades)
```
阅读全文