输入姓名和成绩直接排序python
时间: 2023-09-06 17:12:40 浏览: 56
可以使用Python中的sorted函数来对字典按照值进行排序。下面是一个示例代码:
```python
scores = {"Alice": 85, "Bob": 72, "Charlie": 90, "David": 68}
sorted_scores = sorted(scores.items(), key=lambda x: x[1], reverse=True)
for name, score in sorted_scores:
print(name, score)
```
输出:
```
Charlie 90
Alice 85
Bob 72
David 68
```
在这个示例中,我们首先定义了一个包含姓名和成绩的字典。然后,我们使用sorted函数对字典进行排序,按照字典的值(也就是成绩)进行排序,同时使用reverse=True参数指定降序排序。最后,我们遍历排序后的元组列表,并按照顺序输出姓名和成绩。
相关问题
python输入学号姓名成绩排序
可以使用Python的内置函数sorted()进行排序,以下是一个示例代码:
```python
# 定义学生信息列表
students = [
{'name': 'Tom', 'id': '001', 'score': 90},
{'name': 'Jerry', 'id': '002', 'score': 80},
{'name': 'Alice', 'id': '003', 'score': 95},
]
# 按照分数进行排序
sorted_students = sorted(students, key=lambda student: student['score'], reverse=True)
# 输出排序后的学生信息
for student in sorted_students:
print('name: {}, id: {}, score: {}'.format(student['name'], student['id'], student['score']))
```
输出结果为:
```
name: Alice, id: 003, score: 95
name: Tom, id: 001, score: 90
name: Jerry, id: 002, score: 80
```
在本代码中,我们先定义了一个包含学生信息的列表students,其中每个学生信息包括姓名、学号和成绩。然后我们使用内置的sorted()函数对学生信息进行排序,排序的关键字为学生的成绩score,降序排列(reverse=True)。最后遍历排序后的学生信息列表,并输出每个学生的姓名、学号和成绩。
Python随意输入10个学生的姓名和成绩构成的词典,按照成绩大小排序
可以使用Python内置的sorted函数来对字典进行排序,代码如下:
```python
students = {} # 学生信息字典
# 随意输入10个学生的姓名和成绩
for i in range(10):
name = input("请输入第{}个学生的姓名:".format(i+1))
score = int(input("请输入第{}个学生的成绩:".format(i+1)))
students[name] = score
# 按照成绩大小排序
sorted_students = sorted(students.items(), key=lambda x: x[1], reverse=True)
# 输出排序结果
print("按成绩大小排序结果如下:")
for s in sorted_students:
print("{}: {}".format(s[0], s[1]))
```
上述代码中,我们先创建了一个空字典 `students`,然后使用 `for` 循环随意输入10个学生的姓名和成绩,将其保存到 `students` 中。接着,我们使用 `sorted` 函数对 `students` 进行排序,其中 `key` 参数表示按照成绩大小进行排序,`reverse=True` 表示降序排序。最后,我们遍历排序后的结果,输出每个学生的姓名和成绩。