我有一个清单
a = [[1,2,3],[3,4,5]]
我想在末尾的每一行中插入其他列表中的值
b=[6,7]
我希望结果是
[[1,2,3,6],[3,4,5,7]]
我正在使用:
for i in range (0,len(a)):
for j in range (0,len(b)):
if j==0:
a[i].append(b[j])
m.append(a[i])
else:
a[i][3]=b[j]
m.append(a[i])
print m
但是我没有得到预期的结果。这给了我
[[1, 2, 3, 7], [1, 2, 3, 7], [3, 4, 5, 7], [3, 4, 5, 7]]
有人可以帮我解决正确的代码段。
答案 0 :(得分:2)
以下是使用zip的解决方案:
result = [sublist_a + [el_b] for sublist_a, el_b in zip(a, b)]
给出预期的输出:
[[1, 2, 3, 6], [3, 4, 5, 7]]
答案 1 :(得分:1)
使用zip
例如:
a=[[1,2,3],[3,4,5]]
b=[6,7]
for i, j in zip(a,b):
i.append(j)
print(a)
输出:
[[1, 2, 3, 6], [3, 4, 5, 7]]