将项目从列表添加到python中的列表列表

时间:2017-06-13 19:45:13

标签: python list

假设我有一个列表 a 和列表 b

a = ['1','2','3']
b = [['Hello'],['I'],['am']]

我怎样才能获得以下输出?

b = [['Hello','1'],['I','2'],['am','3']]

我尝试了各种各样的事情,如下所示。

for i in a:
    for j in range(b):
        j.append(i[j])
print(b)

编辑: 我正在寻找一种方法来做到这一点,以防两个列表的长度不同,副本没有回答。如果您查看已接受答案的评论,您将完成解决方案。

2 个答案:

答案 0 :(得分:1)

您可以使用zip列表理解:

r = [[s[0], n] for (n, s) in zip(a, b)]
评论后

更新:

如果您的列表长度不同,则可以使用itertools.zip_longest

from itertools import zip_longest

r = [s if n is None else
     [n] if s is None else
     [s[0], n] for (n, s) in zip_longest(a, b)]

答案 1 :(得分:0)

试试这个;

>>> a = ['1','2','3']
>>> b = [['Hello'],['I'],['am']]
>>> ab = [[b[i][0], a[i]] for i in range(len(a))]