我有一个包含这些值的二维列表:
text = [[4, 3, 8, 9, 5, 1, 2, 7, 6], [8, 3, 4, 1, 5, 9, 6, 7, 2],
[6, 1, 8, 7, 5, 3, 2, 9, 4], [6, 9, 8, 7, 5, 3, 2, 1, 4],
[6, 1, 8, 7, 5, 3, 2, 1, 4], [6, 1, 3, 2, 9, 4, 8, 7, 5]]
例如,text[i] 应该这样打印:
4 3 8
9 5 1
2 7 6
但是我的矩阵打印了这个:
r = 6
m = []
for i in range(r):
m.append([int(x) for x in text[i]])
for i in m:
print (i)
>>
4 3 8 9 5 1 2 7 6
8 3 4 1 5 9 6 7 2
6 1 8 7 5 3 2 9 4
6 9 8 7 5 3 2 1 4
6 1 8 7 5 3 2 1 4
6 1 3 2 9 4 8 7 5
请您参考如下方法:
您可以使用 numpy .首先,将您的列表转换为 numpy 数组。然后,取一个元素并将其整形为 3x3 矩阵。
import numpy as np
text = [[4, 3, 8, 9, 5, 1, 2, 7, 6], [8, 3, 4, 1, 5, 9, 6, 7, 2],
[6, 1, 8, 7, 5, 3, 2, 9, 4], [6, 9, 8, 7, 5, 3, 2, 1, 4],
[6, 1, 8, 7, 5, 3, 2, 1, 4], [6, 1, 3, 2, 9, 4, 8, 7, 5]]
text = np.array(text)
print text[0].reshape((3, 3))
print text[1].reshape((3, 3))
输出:
[[4 3 8]
[9 5 1]
[2 7 6]]
[[8 3 4]
[1 5 9]
[6 7 2]]
使用 numpy,您实际上是在处理矩阵
