如何在列表中压缩列表

我想压缩以下列表清单:

>>> zip([[1,2], [3,4], [5,6]]) [[1,3,5], [2,4,6]] 

只有当列表被拆分成单独的组件时,才能通过当前的zip实现来实现:

 >>> zip([1,2], [3,4], [5,6]) (1, 3, 5), (2, 4, 6)] 

无法弄清楚如何拆分列表并将各个元素传递给zip 。 function性解决scheme是首选。

尝试这个:

 >>> zip(*[[1,2], [3,4], [5,6]]) [(1, 3, 5), (2, 4, 6)] 

请参阅解包参数列表 :

当参数已经在列表或元组中时,会出现相反的情况,但需要对需要单独的位置参数的函数调用进行解压缩。 例如,内置的range()函数需要单独的启动和停止参数。 如果它们不能单独使用,请使用* -operator编写函数调用以将参数从列表或元组中解开:

 >>> range(3, 6) # normal call with separate arguments [3, 4, 5] >>> args = [3, 6] >>> range(*args) # call with arguments unpacked from a list [3, 4, 5]