我正在使用 FOR 实现矩阵求幂:
import numpy as np
fl=2
cl=2
fl2=fl
cl2=cl
M = random.random((fl,cl))
M2 = M
Result = np.zeros((fl,cl))
Temp = np.zeros((fl,cl))
itera = 2
print('Matriz A:\n',M)
print('Matriz AxA:\n',M2)
for i in range (0,itera):
for a in range(0,fl):
for b in range (0,cl):
Result[a,b]+=M[a,b]*M[a,b]
temp[a,b]=Result[a,b]
Res[a,k]=M[a,b]
print('Potencia:\n',temp)
print('Matriz:\n', Result)
Run Code Online (Sandbox Code Playgroud)
错误在于它不能很好地执行乘法,Result[a,b]+=M[a,b]*M[a,b]并且当我将其保存在临时矩阵中以将其与原始矩阵相乘时,它不会进行下一次跳转for i in range (0,itera):
我知道我可以执行该功能np.matmul
,但我尝试使用 FOR 循环来执行该功能
python numpy exponentiation matrix-multiplication python-3.x