对二维数组利用sort方法、sorted函数排序。 需求: 已知有3名学生,包含了学号、姓名、3门课程成绩。python实现
时间: 2024-04-29 14:21:12 浏览: 94
成绩排序(python)
5星 · 资源好评率100%
可以使用二维数组来表示学生信息,然后使用sort方法或sorted函数对其进行排序。比如,以下是一个示例代码:
```python
students = [
[101, '张三', 80, 90, 70],
[102, '李四', 70, 85, 90],
[103, '王五', 90, 75, 80]
]
# 按照总分排序
students.sort(key=lambda x: sum(x[2:]), reverse=True)
print('按照总分排序:')
for s in students:
print(s)
# 按照平均分排序
students.sort(key=lambda x: sum(x[2:]) / 3, reverse=True)
print('按照平均分排序:')
for s in students:
print(s)
# 使用sorted函数按照学号排序
sorted_students = sorted(students, key=lambda x: x[0])
print('按照学号排序:')
for s in sorted_students:
print(s)
```
输出结果为:
```
按照总分排序:
[101, '张三', 80, 90, 70]
[103, '王五', 90, 75, 80]
[102, '李四', 70, 85, 90]
按照平均分排序:
[103, '王五', 90, 75, 80]
[101, '张三', 80, 90, 70]
[102, '李四', 70, 85, 90]
按照学号排序:
[101, '张三', 80, 90, 70]
[102, '李四', 70, 85, 90]
[103, '王五', 90, 75, 80]
```
阅读全文