在大学,我们学习数理统计的时候,经常会遇到两个矩阵相加求和的问题。
今天,我们来看下如何使用Python实现两个矩阵相加求和,应该如何来操作吧。
方法一:使用for-in循环,通过迭代输出列表对应位置的值,来进行求和操作,具体代码如下:
# 两个矩阵相加
X = [[12,7,3], # 创建一个列表
[4 ,5,6],
[7 ,8,9]]
Y = [[5,8,1], # 创建一个列表
[6,7,3],
[4,5,9]]
result = [[0,0,0], # 创建一个空矩阵
[0,0,0],
[0,0,0]]
for i in range(len(X)): # 迭代输出行,矩阵当中,是由三个列表所呈现的。
for j in range(len(X[0])): # 迭代输出列,访问大列表当中 每个列表的第一个元素,即为列
result[i][j] = X[i][j]+Y[i][j] #X下标对应的数字,加上Y下标对应的数字 即为所求
for r in result: # 创建一个循环,遍历每一个列表元素并相加。
print(r) # 打印出结果
==========================================
输出的结果为:
C:\Python\python.exe "C:/Users/Administrator/Desktop/Python 练习实例100题/练习44方法一.py"
[17, 15, 4]
[10, 12, 9]
[11, 13, 18]
Process finished with exit code 0
这种方法,运行起来比较快,并且不需要依赖第三方库,不过需要的代码量比较大。
接下来,我们可以选择通过使用numpy库来实现这项操作。
方法二:通过使用numpy库实现矩阵相加
import numpy as np
x = np.array( [[12,7,3],
[4 ,5,6],
[7 ,8,9]])
y = np.array( [[5,8,1],
[6,7,3],
[4,5,9]])
z = x+y
print(z)
=================
打印输出的结果
C:\Python\python.exe "C:/Users/Administrator/Desktop/Python 练习实例100题/练习44方法二.py"
[[17 15 4]
[10 12 9]
[11 13 18]]
Process finished with exit code 0
2020年3月13日
北京市通州区京贸中心