我想把矩阵转换成列表python

2024-10-01 15:43:38 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨,你好 我需要将矩阵转换为列表,如下所示

Matrix:
[[  1.   6.  13.  10.   2.]
 [  2.   9.  10.  13.  15.]
 [  3.  15.  13.  14.  16.]
 [  4.   5.  14.  13.   6.]
 [  5.  18.  16.   4.   3.]
 [  6.   7.  12.  18.   3.]
 [  7.   1.   8.  17.  11.]
 [  8.  14.   5.   4.  16.]
 [  9.  16.  18.  17.  15.]
 [ 10.   8.   9.  15.  17.]
 [ 11.  11.  17.  18.  12.]]

List:
[(1, 6, 13, 10, 2),  (2, 9, 10, 13, 15), (3, 15, 13, 14, 16),
 (4, 5, 14, 13, 6),  (5, 18, 16, 4, 3),  (6, 7, 12, 18, 3), 
 (7, 1, 8, 17, 11),  (8, 14, 5, 4, 16),  (9, 16, 18, 17, 15),
 (10, 8, 9, 15, 17), (11, 11, 17, 18, 12)]

先进的Thx


Tags: 列表矩阵matrixlistthx
3条回答

这是纽米矩阵吗?如果是,就使用tolist()方法。E、 g.:

import numpy as np
x = np.matrix([[1,2,3],
               [7,1,3],
               [9,4,3]])
y = x.tolist()

这将产生:

y --> [[1, 2, 3], [7, 1, 3], [9, 4, 3]]

最好的方法是:

result = map(tuple, Matrix)

如果您使用的是numpy并且只想遍历矩阵作为列表,那么您可以

from numpy import array
m = [[  1.   6.  13.  10.   2.]
 [  2.   9.  10.  13.  15.]
 [  3.  15.  13.  14.  16.]
 [  4.   5.  14.  13.   6.]
 [  5.  18.  16.   4.   3.]
 [  6.   7.  12.  18.   3.]
 [  7.   1.   8.  17.  11.]
 [  8.  14.   5.   4.  16.]
 [  9.  16.  18.  17.  15.]
 [ 10.   8.   9.  15.  17.]
 [ 11.  11.  17.  18.  12.]]

for x in array(m).flat:
   print x

这不会消耗额外的内存

相关问题 更多 >

    热门问题