python求矩阵的n次方的代码
时间: 2023-11-18 19:05:34 浏览: 113
求矩阵的迹的代码
4星 · 用户满意度95%
以下是求矩阵的n次方的Python代码:
```python
import numpy as np
def matrix_power(matrix, n):
"""
求矩阵matrix的n次方
"""
if n == 0:
return np.eye(matrix.shape[0]) # 返回单位矩阵
elif n == 1:
return matrix
elif n % 2 == 0:
# 若n为偶数,则matrix的n次方等于(matrix的n/2次方)的平方
matrix_half = matrix_power(matrix, n//2)
return matrix_half.dot(matrix_half)
else:
# 若n为奇数,则matrix的n次方等于matrix*(matrix的(n-1)次方)
matrix_prev = matrix_power(matrix, n-1)
return matrix.dot(matrix_prev)
```
使用示例:
```python
matrix = np.array([[1, 2], [3, 4]])
n = 3
result = matrix_power(matrix, n)
print(result)
```
输出结果:
```
[[ 37 54]
[ 81 118]]
```
阅读全文