为了账号安全,请及时绑定邮箱和手机立即绑定

转置列表。

转置列表。

九州编程 2019-06-21 17:43:33
转置列表。我们来看看:l = [[1,2,3],[4,5,6],[7,8,9]]我要找的结果是r = [[1,4,7],[2,5,8],[3,6,9]]而不是r = [(1,4,7),(2,5,8),(3,6,9)]非常感谢
查看完整描述

3 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

怎么样

map(list, zip(*l))--> [[1, 4, 7], [2, 5, 8], [3, 6, 9]]

对于python 3.x用户可以使用

list(map(list, zip(*l)))


查看完整回答
反对 回复 2019-06-21
?
摇曳的蔷薇

TA贡献1793条经验 获得超6个赞

一种方法是使用NumPy转置。关于清单,a:

>>> import numpy as np>>> np.array(a).T.tolist()[[1, 4, 7], [2, 5, 8], [3, 6, 9]]

或者另一个没有拉链的:

>>> map(list,map(None,*a))[[1, 4, 7], [2, 5, 8], [3, 6, 9]]


查看完整回答
反对 回复 2019-06-21
?
慕虎7371278

TA贡献1802条经验 获得超4个赞

相当于耶拿的解决方案:

>>> l=[[1,2,3],[4,5,6],[7,8,9]]>>> [list(i) for i in zip(*l)]... [[1, 4, 7], [2, 5, 8], [3, 6, 9]]


查看完整回答
反对 回复 2019-06-21
  • 3 回答
  • 0 关注
  • 713 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信