Python实现矩阵乘法

您所在的位置:网站首页 python求乘积语句 Python实现矩阵乘法

Python实现矩阵乘法

2022-05-11 05:14| 来源: 网络整理| 查看: 265

问题

矩阵相信大家都知道,是线性代数中的知识,就是一系列数集。顾名思义,数字组成的矩形,例如:

[1 2 3 4

5 67 8

9 1011 ]

现在,我们需要用python编程来实现矩阵的乘法。

输入示例:

2 3 3 4

1 2 3

4 5 6

1 2 3 4

5 6 7 8

9 10 11 12

输出示例:

38 44 50 56

83 98 113 128

注意:输入的第一行分别为两个矩阵的行列数(表示为:N1,M1,N2,M2)。

方法矩阵乘法原理

要做矩阵的乘法,首先得搞清楚几点关于矩阵乘法的知识。

只有一个矩阵的列数等于另一个矩阵的行数时,这两个矩阵才能相乘。

矩阵乘法的原理是,一个矩阵的每一行分别与另一个矩阵的每一列的每一个数一一对应相乘再相加,得到的数字就是结果矩阵的中的一个数。

结果矩阵的形状是一个矩阵的行数和另一个矩阵的列数。如A23 * B34 =C2*4.总结出来就是:‘中间相等,取两头’。

Python实现矩阵乘法

知道了矩阵乘法的原理后,再一起来看看如何用python编写出程序吧。如何输入输出矩阵就不说了,直接看中间的算法。有以下几个步骤:

“定循环”。先根据乘法的原理,得出结果矩阵的形状,比如:A23 * B34 =C24,结果矩阵为2行4列,所以就一共有24个数字,也就是说程序需要循环24次。则循环可定为N1M2.

“定因数”。每一次相乘时,两个因数都会改变,所以需要在循环开始出设置变量,这样每一次的变量都会更新。

“定结果”。在每一次循环时,需要算出一个结果,为了计算简便,可使用匿名函数lambda,其用法为lambdax:function,iterable.其中x为iterable的遍历。分别执行function。

代码示例lis1,lis2 = [],[]

N1,M1,N2,M2 = map(int,input().split())

for i in range(N1):

nums = list(map(int,input().split()))

lis1.append(nums)

for i in range(N2):

nums = list(map(int,input().split()))

lis2.append(nums)

res = []

for a in range(N1):

res.append([])

for b in range(M2):

lis4 = []

lis3 = lis1[a]

for c in range(N2):

lis4.append(lis2[c][b])

res_num = sum(map(lambda x,y:x*y,lis3,lis4))

res[a].append(res_num)

for i in res:

for o in i:

print(o,end=' ')

print()

运行效果

Python实现矩阵乘法_代码示例

结语

Python中很多东西常常与数学有关,要想做正确,还得究其原理。对于矩阵乘法,可以是说得非常详细了,甚至会显得有点啰嗦,但是,所体现的是对于一个问题的解题思路。关键在于解题的方法,是需要一步一步来看的。这才是本文所要告诉大家的。

标签: python 矩阵乘法 代码示例 Python 编程语言

上一篇:ESXI系统硬盘对拷 下一篇:返回列表

相关文章

Camtasia教程 Camtasia 如何处理音频制作BGM Camtasia 如何处理音频制作BGM

我们在剪辑自己录制的视频时经常会需要同时对音频进行处理,camtasia是一个可以对视频的音频或者单独的音频文件进行处理的软件,那我们就来看看到底如何使用camtasia 2019(Win)来处理音频......

2022-02-21 568 Camtasia,如何,处理,音频制作,BGM,我们,在,剪辑,

详细阅读 Camtasia教程 如何利用 Camtasia 给视频添加转换效果 如何利用 Camtasia 给视频添加转换效果

Camtasia就可以非常简单快捷地给视频添加转换效果,只是笔者经验尚浅,给忘了。于是笔者飞速修改了视频,最终效果还不错哦。 今天,笔者就向大家展示一下如何让用Camtasia给视频添加转换效......

2021-06-25 453 如何,利用,Camtasia,给,视频,添加,转换,效果,

详细阅读 Camtasia教程 Camtasia音频的编辑技巧 Camtasia音频的编辑技巧

视频中的音频效果很重要,它能决定制作制作出来的视频质量,我们来看看在Camtasia编辑音频有哪些技巧吧! 1. 音量 拉高或拉低音频上的音频条可以调高和调低音量,如果要让某一段音量是静音......

2022-02-21 84 Camtasia音频编辑

详细阅读 Camtasia教程 聊聊安卓禁用俄罗斯BQ手机这事 聊聊安卓禁用俄罗斯BQ手机这事

聊聊安卓禁用俄罗斯BQ手机这事,先前是苹果手机第一个禁用了俄罗斯,最近网上说俄罗斯本土BQ智能手机被下Android禁令,这意味着俄罗斯公司将无法为其国内市场发行Android智能手机,其手机厂商也无法在其接下来的Android智能手机中使用GMS服务。......

2022-03-29 4 聊聊安卓禁用俄罗斯BQ手机这事,网络管理博客,

详细阅读 Camtasia教程 SAP WM中阶LT06对物料做上架报错 -Definition of totals level is missing for storage type 004 - SAP WM中阶LT06对物料做上架报错 -Definition of totals level is missing for storage type 004 -

SAP WM中阶LT06对物料做上架报错 -Definition of totals level is missing for storage type 004 -,SAPWM中阶LT06对物料做上架报错-Definitionoftotalslevelismissingforstoragetype004-1,在BulkStorage上架策略中,做好了后台配置。Storagetype004,2,如下物料793用于测试,为该物料创建了采购订单,3,执行MIGO收货后进入LT06事务代码界面,回车后进入TO创建......

2022-04-09 3 SAP WM中阶LT06对物料做上架报错 -Definition of totals level is missing for storage type 004

详细阅读


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3