Python, match by index some lists into a list of lists
本问题已经有最佳答案,请猛点这里访问。
所以我有点像:
1 2 3 | l1=[1,2,3] l2=[4,5,6] l3=[7,8,9] |
预期产量为:
最有效的方法是什么?
使用
1 | [list(x) for x in zip(l1, l2, l3)] |
结果:
1 | [[1, 4, 7], [2, 5, 8], [3, 6, 9]] |
1 2 3 4 5 | >>> l1 = [1,2,3] >>> l2 = [4,5,6] >>> l3 = [7,8,9] >>> zip(l1,l2,l3) [(1, 4, 7), (2, 5, 8), (3, 6, 9)] |
使用列表理解将元组强制转换为列表,以获得列表列表:
1 2 | >>> [list(i) for i in zip(l1,l2,l3)] [[1, 4, 7], [2, 5, 8], [3, 6, 9]] |
1 2 3 4 5 | >>> l1=[1,2,3] >>> l2=[4,5,6] >>> l3=[7,8,9] >>> zip(l1, l2, l3) [(1, 4, 7), (2, 5, 8), (3, 6, 9)] |
内置的功能zip将帮助您实现所需的功能。