python 成绩排序
时间: 2023-11-03 22:59:26 浏览: 146
成绩排序(python)
5星 · 资源好评率100%
以下是一个简单的 Python 代码示例,用于从一个包含学生姓名和分数的字典中按分数排序并输出排名:
```python
students = {'Alice': 85, 'Bob': 72, 'Charlie': 93, 'David': 64, 'Emily': 77}
sorted_students = sorted(students.items(), key=lambda x: x[1], reverse=True)
for i, (name, score) in enumerate(sorted_students):
print(f'{i+1}. {name}: {score}')
```
输出结果:
```
1. Charlie: 93
2. Alice: 85
3. Emily: 77
4. Bob: 72
5. David: 64
```
代码解析:
- 首先定义了一个字典 `students`,其中包含了每个学生的姓名和分数。
- 使用 `sorted()` 函数对字典按照分数进行排序,生成一个列表 `sorted_students`。`key` 参数指定排序的依据,这里使用了一个 `lambda` 函数,表示按照字典的值(即分数)进行排序;`reverse` 参数为 `True` 表示降序排列。
- 使用 `enumerate()` 函数对排序后的列表进行遍历,同时输出每个学生的排名、姓名和分数。注意,由于排名从 1 开始,需要在输出时将遍历的索引值加上 1。
阅读全文