这就是我想干净利落地做的事情。我有以下列表
lst1 = [[1,2,3],[4,5,6],[7,8,9]]现在,我想生成以下列表
lst2 = [[1,4,7],[2,5,8],[3,6,9]]现在我知道我可以像下面这样接近lst2
lst2 = zip[lst1[0],lst1[1],lst1[2]]
lst2 = [(1, 4, 7), (2, 5, 8), (3, 6, 9)]然后使用for循环生成我的新列表列表。
当原始列表的大小未知时,是否有方法生成新列表。
lst1 = [[0],[1], ... [n]]
lst2 = [[0],[2], ... [n]]我花了太多的时间来研究和尝试解决这个问题。这个过程真的不需要be,因为我只使用3个列表的列表。(Exp.lst1)。我的好奇心占了上风。希望有人有一个解决方案,因为我在这一点上遇到了障碍。
发布于 2015-09-23 00:59:58
你所需要的是:
lst1 = [[1,2,3],[4,5,6],[7,8,9]]
print zip(*lst1)给予:
[(1, 4, 7), (2, 5, 8), (3, 6, 9)]通过添加*,它告诉Python将列表解包为函数的单独参数。参见Unpacking Argument Lists。
https://stackoverflow.com/questions/32722628
复制相似问题