我是初学者,我想问一下,如何将列表年龄的值添加到列表n_list中。
n_lst = [['Peter', 'Brown'], ['Thomas', 'Black'], ['Andy', 'Green']]
age = [33, 35, 28]
我需要得到什么:
[['Peter', 'Brown', 33], ['Thomas', 'Black', 35], ['Andy', 'Green', 28]]
非常感谢您的帮助!
答案 0 :(得分:1)
lst = [['Peter', 'Brown'], ['Thomas', 'Black'], ['Andy', 'Green']]
age = [33, 35, 28]
new_lst = [p + [a] for p, a in zip(lst, age)]
就地修改:
for p, a in zip(lst, age):
p.append(a)
print(lst)
答案 1 :(得分:1)
n_lst = [['Peter', 'Brown'], ['Thomas', 'Black'], ['Andy', 'Green']]
age = [33, 35, 28]
for i in range(len(age)):
n_lst[i].append(age[i])
答案 2 :(得分:1)
这里有3个简单的选项(还有很多更复杂的选项)
对于嵌套列表中的每个列表,请使用相同的索引附加年龄列表中的项目:
for index, subList in enumerate(n_lst):
subList.append(age[index])
对于列表中的每个项目,枚举为您提供了项目的数字位置和项目本身。我们可以使用它轻松地选择相应的年龄。
获取一个与年龄列表中每个项目的索引相对应的数字,并使用该数字来标识我们要将年龄附加到的子列表。听起来一样,结果也一样,但对我来说总是有点混乱:
for i in range(len(age)):
n_lst[i].append(age[i])
使用整理的信息创建一个新列表:
lst = [subList + [year] for subList, year in zip(lst, age)]
zip()从传递给它的对象中返回一个元组的迭代器。在这一点上,我会尽量避免担心这意味着什么。