如何用python表示矩阵

问题描述:

如何用python表示矩阵?如何用python表示矩阵

this answer看看:

from numpy import matrix 
from numpy import linalg 
A = matrix([[1,2,3],[11,12,13],[21,22,23]]) # Creates a matrix. 
x = matrix([[1],[2],[3]])     # Creates a matrix (like a column vector). 
y = matrix([[1,2,3]])      # Creates a matrix (like a row vector). 
print A.T         # Transpose of A. 
print A*x         # Matrix multiplication of A and x. 
print A.I         # Inverse of A. 
print linalg.solve(A, x)  # Solve the linear equation system. 
+0

高兴你提到的来源。不要激怒你复制别人的答案,也没有提供你自己的解释。很难相信这是目前公认的答案和最高票数。也许你可以付出一点努力来解释“你的答案”? – jasonleonhard 2017-09-07 01:30:44

Python没有矩阵。您可以使用或列表的列表NumPy

((1,2,3,4), 
(5,6,7,8), 
(9,0,1,2)) 

使用元组而不是列表使得它更难轻微改变数据结构中不需要的方式。

如果您打算广泛使用这些功能,您最好将true number array包装到一个类中,以便您可以定义它们的方法和属性。 (或者,你可以与NumPy,SciPy的,...如果你打算使用这些库做你的处理。)

如果你不打算使用NumPy库,你可以使用嵌套列表。这是实现动态嵌套列表(二维列表)的代码。

r是行

let r=3 

m=[] 
for i in range(r): 
    m.append([int(x) for x in raw_input().split()]) 

您可以随时追加使用

m.append([int(x) for x in raw_input().split()]) 

上面,你必须按行输入矩阵的行数。要插入列:

for i in m: 
    i.append(x) # x is the value to be added in column 

要打印的矩阵:

print m  # all in single row 

for i in m: 
    print i # each row in a different line