假设我们用一组tuple表示学生名字和成绩: L = [("Bob", 75), ("Adam", 92), ("Bart", 66), ("Lisa", 88)],请对上述列表分别按成绩升序、降序排序
时间: 2023-11-03 10:03:38 浏览: 114
PYTHON学习教程:使用list和tuple(详细代码讲解).docx
好的,针对这个问题,我可以提供以下 Python 代码来对列表进行排序:
```python
L = [("Bob", 75), ("Adam", 92), ("Bart", 66), ("Lisa", 88)]
# 按成绩升序排序
sorted_by_score_asc = sorted(L, key=lambda x: x[1])
# 按成绩降序排序
sorted_by_score_desc = sorted(L, key=lambda x: x[1], reverse=True)
print(sorted_by_score_asc)
print(sorted_by_score_desc)
```
输出结果分别为:
```
[('Bart', 66), ('Bob', 75), ('Lisa', 88), ('Adam', 92)]
[('Adam', 92), ('Lisa', 88), ('Bob', 75), ('Bart', 66)]
```
其中,`sorted()` 函数的第一个参数是要排序的列表,第二个参数是一个用来指定排序方式的 `key` 函数,`lambda x: x[1]` 表示按照列表中每个元素的第二个元素(即成绩)进行排序,`reverse=True` 表示按降序排序。
阅读全文