使用
zip
和
*
接线员:
>>> values = [[100000.0, 36.0, 0.08, 20000.0],
... [200000.0, 12.0, 0.1, 0.0],
... [628400.0, 120.0, 0.12, 100000.0],
... [4637400.0, 240.0, 0.06, 0.0],
... [42900.0, 90.0, 0.07, 8900.0],
... [916000.0, 16.0, 0.13, 0.0],
... [45230.0, 48.0, 0.08, 4300.0],
... [991360.0, 99.0, 0.08, 0.0],
... [423000.0, 27.0, 0.09, 47200.0]]
>>> list(zip(*values))
[(100000.0, 200000.0, 628400.0, 4637400.0, 42900.0, 916000.0, 45230.0, 991360.0, 423000.0), (36.0, 12.0, 120.0, 240.0, 90.0, 16.0, 48.0, 99.0, 27.0), (0.08, 0.1, 0.12, 0.06, 0.07, 0.13, 0.08, 0.08, 0.09), (20000.0, 0.0, 100000.0, 0.0, 8900.0, 0.0, 4300.0, 0.0, 47200.0)]
如果让新列表由列表而不是元组组成很重要,那么映射
list
在上面:
>>> list(map(list, zip(*values)))
[[100000.0, 200000.0, 628400.0, 4637400.0, 42900.0, 916000.0, 45230.0, 991360.0, 423000.0], [36.0, 12.0, 120.0, 240.0, 90.0, 16.0, 48.0, 99.0, 27.0], [0.08, 0.1, 0.12, 0.06, 0.07, 0.13, 0.08, 0.08, 0.09], [20000.0, 0.0, 100000.0, 0.0, 8900.0, 0.0, 4300.0, 0.0, 47200.0]]