Python 已知一个列表存放学生姓名,另外一个列表存放学生成绩。把姓名和成绩配对后,形成一个嵌套列表,按照成绩升序输出列表。 【输入形式】 第一行输入姓名,每个姓名用逗号分隔。第二行输入成绩,按照逗号分隔。 【输出形式】 直接用print输出列表 【样例输入】 tom,james,jack 89,34,78 【样例输出】 [['james', 34], ['jack', 78], ['tom', 89]] 【样例说明】 直接输出嵌套列表,姓名和成绩组合在一起。
时间: 2023-05-18 19:04:16 浏览: 698
以下是 ChatGPT 的回答:
可以使用 zip() 函数将两个列表配对,然后使用 sorted() 函数按照成绩升序排序,最后将结果转换为嵌套列表。下面是代码示例:
names = input().split(',')
scores = list(map(int, input().split(',')))
pairs = list(zip(names, scores))
sorted_pairs = sorted(pairs, key=lambda x: x[1])
result = [[name, score] for name, score in sorted_pairs]
print(result)
输出结果为:
[['james', 34], ['jack', 78], ['tom', 89]]
相关问题
Python 已知一个列表存放学生姓名,另外一个列表存放学生成绩。把姓名和成绩配对后,形成一个嵌套列表,按照成绩升序输出列表。
可以使用Python的`zip()`函数将两个列表中的元素一一对应起来形成一个嵌套列表,然后使用`sorted()`函数按照成绩升序进行排序。
代码示例:
```python
names = ['Tom', 'Jack', 'Mary', 'Mike']
scores = [85, 76, 92, 80]
# 将姓名和成绩配对形成嵌套列表
pairs = list(zip(names, scores))
# 按照成绩升序排序
sorted_pairs = sorted(pairs, key=lambda x: x[1])
# 输出排序后的嵌套列表
print(sorted_pairs)
```
输出结果:
```
[('Jack', 76), ('Mike', 80), ('Tom', 85), ('Mary', 92)]
```
其中,`zip()`函数将两个列表中的元素一一对应起来形成嵌套列表`pairs`:
```
[('Tom', 85), ('Jack', 76), ('Mary', 92), ('Mike', 80)]
```
然后,使用`sorted()`函数按照`pairs`中嵌套列表的第二个元素(即成绩)升序排序,得到排序后的嵌套列表`sorted_pairs`。
最后,将排序后的嵌套列表输出即可。
已知一个列表存放学生姓名,另外一个列表存放学生成绩。把姓名和成绩配对后,Python形成一个嵌套列表,按照成绩升序输出列表。
可以通过zip函数将姓名和成绩配对,然后利用sorted函数按照成绩升序排序,最后将结果存储到嵌套列表中。以下是示例代码:
```
names = ["Alice", "Bob", "Charlie", "David"]
scores = [85, 76, 92, 80]
# 将姓名和成绩配对
pairs = list(zip(names, scores))
# 按照成绩升序排序
sorted_pairs = sorted(pairs, key=lambda x: x[1])
# 存储到嵌套列表中
result = [[pair[0], pair[1]] for pair in sorted_pairs]
# 输出结果
print(result)
```
运行结果为:
```
[['Bob', 76], ['David', 80], ['Alice', 85], ['Charlie', 92]]
```
阅读全文