python字典统计学生成绩
时间: 2023-09-08 08:17:11 浏览: 351
假设我们有以下学生成绩的字典:
```python
scores = {
"张三": 80,
"李四": 90,
"王五": 85,
"赵六": 75,
"钱七": 95
}
```
要统计学生的平均分、最高分和最低分,可以使用以下代码:
```python
# 计算平均分
average_score = sum(scores.values()) / len(scores)
# 计算最高分
max_score = max(scores.values())
# 计算最低分
min_score = min(scores.values())
print("平均分:", average_score)
print("最高分:", max_score)
print("最低分:", min_score)
```
输出结果为:
```
平均分: 85.0
最高分: 95
最低分: 75
```
希望对你有帮助!
相关问题
python字典统计学生成绩排列等级
在Python中,你可以使用字典来存储学生的成绩,然后结合统计和排序的方法来生成成绩排名。以下是一个简单的步骤:
1. **创建字典**:首先,定义一个字典,其中键是学生的名字,值是他们的成绩。例如:
```python
scores = {
"Alice": 85,
"Bob": 92,
"Charlie": 78,
"Dave": 95,
"Eve": 88
}
```
2. **统计**:使用内置的`collections.Counter`来计算每个分数出现的次数,如果需要等级(如A、B、C等),可以设置分段阈值。
```python
from collections import Counter
grade_thresholds = (90, 80, 70) # 分数划分点
grades = {i: 'A' for i in range(90, 101)} # 假设90分及以上为A级
for i, k in enumerate(sorted(scores.values(), reverse=True)):
grades[k] = 'B' if i >= grade_thresholds else 'C' if i >= grade_thresholds else 'D'
grade_counts = Counter(grades.values())
```
3. **生成排名**:对字典按照成绩排序,然后根据分数和等级生成排名。可以用`sorted`函数配合自定义的排序关键字(成绩和等级)来实现。
```python
students_with_ranks = {}
for name, score in sorted(scores.items(), key=lambda x: (-grade_counts[x], x)):
students_with_ranks[name] = {"score": score, "grade": grades[score], "rank": rank + 1}
rank += 1 # rank初始化为1,每次循环后加1
```
4. **输出结果**:最后,你可以打印或返回这个包含学生信息、成绩、等级和排名的字典。
Python字典-学生成绩统计
Python字典是一种无序的数据结构,用于存储键值对。在学生成绩统计中,可以使用字典来存储每个学生的姓名和对应的成绩。
以下是一个示例代码,展示如何使用字典进行学生成绩统计:
```python
# 创建一个空字典
student_scores = {}
# 添加学生姓名和成绩
student_scores['Alice'] = 85
student_scores['Bob'] = 92
student_scores['Charlie'] = 78
student_scores['David'] = 90
# 访问学生的成绩
print(student_scores['Alice']) # 输出:85
# 修改学生的成绩
student_scores['Alice'] = 90
# 删除学生的成绩
del student_scores['Charlie']
# 遍历字典,输出所有学生的姓名和成绩
for student, score in student_scores.items():
print(student, score)
```
阅读全文