Python 如何组合两个索引长度相同的2d列表?

Python 如何组合两个索引长度相同的2d列表?,python,list,python-3.x,Python,List,Python 3.x,我是python新手,我有一个小问题 我需要合并两个二维列表,如下所示: list1= [['a','b','c'],['d','e']] list2= [[1,2,3],[4,5]] result= [['a1','b2','c3'],['d4','e5']] 结果应该是这样的: list1= [['a','b','c'],['d','e']] list2= [[1,2,3],[4,5]] result= [['a1','b2','c3'],['d4','e5']] 我们可以将嵌套列表

我是python新手,我有一个小问题

我需要合并两个二维列表,如下所示:

list1= [['a','b','c'],['d','e']]
list2= [[1,2,3],[4,5]]
result= [['a1','b2','c3'],['d4','e5']]
结果应该是这样的:

list1= [['a','b','c'],['d','e']]
list2= [[1,2,3],[4,5]]
result= [['a1','b2','c3'],['d4','e5']]
我们可以将嵌套列表理解与两个
zip(…)
s一起使用:

这将产生:

>>> list1= [['a','b','c'],['d','e']]
>>> list2= [[1,2,3],[4,5]]
>>> [ [ '%s%s'%zi for zi in zip(*z) ] for z in zip(list1,list2) ]
[['a1', 'b2', 'c3'], ['d4', 'e5']]
因此,外部循环并行地迭代两个列表
list1
list2
,并构造我们分配给
z
的元组。对于每个元组,我们执行第二次
zip
调用
zip(*z)
来构造两个子元素的元组。对于这些子元素中的每一个子元素,我们然后用
'%s%s'%zi
构造一个字符串

或者可以将其显式转换为字符串,如:

[ [ ''.join(map(str,zi)) for zi in zip(*z) ] for z in zip(list1,list2) ]

这些是字符串吗?
[[''.join(zi)for zi in zip(*z)]for z in zip(list1,map(str,list2))]
进行类型转换explicit@f5r5e5d:在这种情况下,您必须执行
map
ping更深一层。现在,您将对
list2
.opps的子列表进行字符串化,
[''.join((zi[0],str(zi[1]))表示zip中的zi(*z)]表示zip中的z(
list1,list2)]
正在工作,将失败的
map()
错误地尝试
[''.join(zi表示zip中的zi表示zip(*z)]表示zip中的z表示zip中的z(list1,[map(str表示i)表示列表中的i])
修复了
映射(str,)