我的问题很简单。 有两个列表。 第一个是整数列表:
a = [1, 2, 3]
另一个是列表清单:
b = [['a', 'b'], ['c', 'd'], ['e', 'f']]
我怎样才能得到以下结果:
result = [[1, 'a', 'b'], [2, 'c', 'd'], [3, 'e', 'f']]
感谢。
答案 0 :(得分:9)
>>> a = [1, 2, 3]
>>> b = [['a', 'b'], ['c', 'd'], ['e', 'f']]
>>> [[aa] + bb for aa, bb in zip(a, b)]
[[1, 'a', 'b'], [2, 'c', 'd'], [3, 'e', 'f']]
答案 1 :(得分:2)
在Python3中
>>> a = [1, 2, 3]
>>> b = [['a', 'b'], ['c', 'd'], ['e', 'f']]
>>> [aa+bb for *aa, bb in zip(a,b)]
[[1, 'a', 'b'], [2, 'c', 'd'], [3, 'e', 'f']]
答案 2 :(得分:0)
以下Python代码将解压缩每个列表并以您指定的形式组装它。
[[a[i]] + b[i] for i in range(min(len(a),len(b)))]
答案 3 :(得分:0)
另一种方法是:
index = 0
l = b
for i in a:
l[index].append(i)
index += 1
答案 4 :(得分:0)
使用Python的enumerate
函数,您可以使用索引遍历列表。使用x.extend(y)
会将列表x
中的值添加到列表y
之前。
a = [1, 2, 3]
b = [['a', 'b'], ['c', 'd'], ['e', 'f']]
result = []
for index, value in enumerate(a):
aa = [value]
aa.extend(b[index])
result.append(aa)