慕码人8056858
我看到你已经回答了你自己的问题,如下:[[(i1,j1) for i1, j1 in zip(i, j)] for i, j in zip(a, b)]然而,存在一种简化的形式,沿着类似的路线,但直接使用元组,而不是将它们解压到多个变量中——第一个列表理解也可以通过调用以下的输出来list替换zip:[list(zip(*t)) for t in zip(a,b)]或者:vars = (a, b)[list(zip(*t)) for t in zip(*vars)]除了稍微简单一点之外,这样做的优点是更容易推广到更多变量,例如,如果您有:a = [[1, 2], [3, 4]]b = [[5, 6], [7, 8]]c = [[9, 10], [11, 12]]然后你可以这样做:vars = (a, b, c)[list(zip(*t)) for t in zip(*vars)]为你带来:[[(1, 5, 9), (2, 6, 10)], [(3, 7, 11), (4, 8, 12)]]