我有什么:
a = [[1,2,3,4,5],[2,3,4,5]]
b = [["hallo"]],[["bye"]]
我想要的是什么:
new1 = [[1,2,3,4,5],"hallo"]
new2 = [[2,3,4,5],"bye"]
最困难的部分是我希望它以一种方式,当用户在a和b中放入一个额外的列表时,它不会出错但会自动将新输入添加到新列表中(例如新的3 [带有[第三个] ],[b"第三"]]
我希望有人可以帮助我!
答案 0 :(得分:3)
IIUC你可以使用zip
功能:
In [31]: new1, new2 = map(list, zip(a, b))
In [32]: new1
Out[32]: [[1, 2, 3, 4, 5], [['hallo']]]
In [33]: new2
Out[33]: [[2, 3, 4, 5], [['bye']]]
答案 1 :(得分:1)
您可以使用zip
并解压缩:
>>> new1, new2 = list(zip(a, [x[0][0] for x in b]))
>>> new1
([1, 2, 3, 4, 5], 'hallo')
>>> new2
([2, 3, 4, 5], 'bye')
显然,额外的列表要求您将代码调整为n
项而不是假设两项,但技巧是相同的。