Skip to main content
 首页 » 编程设计

python之如何创建 3x3 矩阵

2025年05月04日10soundcode

我有一个包含这些值的二维列表:

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,您实际上是在处理矩阵