【问题描述】 已知一个列表存放学生姓名,另外一个列表存放学生成绩。把姓名和成绩配对后,形成一个嵌套列表,按照成绩升序输出列表。 【输入形式】 第一行输入姓名,每个姓名用逗号分隔。第二行输入成绩,按照逗号分隔。 【输出形式】 直接用print输出列表
时间: 2023-07-16 17:15:03 浏览: 97
学生成绩信息输入排序输出
以下是 Python 代码实现:
```python
name_list = input().split(',')
score_list = list(map(int, input().split(',')))
nested_list = [[name_list[i], score_list[i]] for i in range(len(name_list))]
nested_list.sort(key=lambda x: x[1])
print(nested_list)
```
首先读入姓名和成绩分别存储在 `name_list` 和 `score_list` 中。然后通过列表推导式和 `zip` 函数将它们配对成嵌套列表 `nested_list`,其中每个元素为 `[姓名, 成绩]` 的形式。
接着使用 `sort` 函数对 `nested_list` 进行排序,排序的依据是每个元素的第二个值,即成绩。为了方便,这里使用了一个 lambda 函数作为排序的 key。
最后直接使用 `print` 函数输出 `nested_list` 即可。
阅读全文