Python实现矩阵加法和乘法的方法分析
作者:逍遥浪人 发布时间:2023-07-30 09:39:06
标签:Python,矩阵
本文实例讲述了Python实现矩阵加法和乘法的方法。分享给大家供大家参考,具体如下:
本来以为python的矩阵用list表示出来应该很简单可以搞。。其实发现有大学问。
这里贴出我写的特别不pythonic的矩阵加法,作为反例。
def add(a, b):
rows = len(a[0])
cols = len(a)
c = []
for i in range(rows):
temp = []
for j in range(cols):
temp.append(a[i][j] + b[i][j])
c.append(temp)
return c
然后搜索了一下资料,果断有个很棒的,不过不知道有没有更棒的。
矩阵加法
def madd(M1, M2):
if isinstance(M1, (tuple, list)) and isinstance(M2, (tuple, list)):
return [[m+n for m,n in zip(i,j)] for i, j in zip(M1,M2)]
矩阵乘法
def multi(M1, M2):
if isinstance(M1, (float, int)) and isinstance(M2, (tuple, list)):
return [[M1*i for i in j] for j in M2]
if isinstance(M1, (tuple, list)) and isinstance(M2, (tuple, list)):
return [[sum(map(lambda x: x[0]*x[1], zip(i,j)))
for j in zip(*M2)] for i in M1]
希望本文所述对大家Python程序设计有所帮助。
来源:http://blog.csdn.net/fkysly/article/details/16893897


猜你喜欢
- 前言最近在学习过程中需要用到pytorch框架,简单学习了一下,写了一个简单的案例,记录一下pytorch中搭建一个识别网络基础的东西。对应
- Javascript中标签(label)是一个标识符。标签可以与变量重名,它是一个独立的语法元素(既不是变量,也不是类型),其作用是标识”标
- 使用PHP开发应用程序,尤其是网站程序,常常需要生成随机密码,如用户注册生成随机密码,用户重置密码也需要生成一个随机的密码。随机密码也就是一
- 本文实例讲述了Go语言中的switch用法。分享给大家供大家参考。具体分析如下:这里你可能已经猜到 switch 可能的形式了。case 体
- 注意:本文基于Python2.4完成;如果看到不明白的词汇请记得百度谷歌或维基,whatever。 1. 正则表达式基础 1.1. 简单介绍
- MySQL是一款关系型数据库管理系统,是由Oracle旗下公司MySQL AB 公司开发,是在web方面最好的、最流行的关系型数据库软件应用
- 由于tornado内置的AsyncHTTPClient功能过于单一, 所以自己写了一个基于Tornado的HTTP客户端库, 鉴于自己多处使
- 关于ajax的responseText乱码的问题这个问题让我和纠结百度了好多都说是javascript的编码问题但是我的 javascrip
- 一、matplotlib.pyplot.boxplot()语法boxplot(x, notch=None, sym=None, vert=N
- 前言前段时间看到有人问如何使用Python实现多张图片组成文字的效果?觉得还挺有意思,于是尝试做了一下,刚好赶上端午节,所以打算从网上下载1
- 可视化包Pygal生成可缩放矢量图形文件可以在尺寸不同的屏幕上自动缩放,显示图表#安装pygalpip install pygal'
- 本文实例讲述了Python使用xlrd读取Excel格式文件的方法。分享给大家供大家参考。具体如下:使用xlrd能够很方便的读取excel文
- Apache2 httpd.conf 中文版 # # 基于 NCSA 服务的配
- 本文实例讲述了Python实现查找系统盘中需要找的字符。分享给大家供大家参考。具体如下:'''Created on
- 实现了简单版本的logging.config,支持一般的通过config文件进行配置。感觉还有更好的方法,是直接利用logging.conf
- namedtuple是Python中存储数据类型,比较常见的数据类型还有有list和tuple数据类型。
- 概述从今天开始我们将开启一段自然语言处理 (NLP) 的旅程. 自然语言处理可以让来处理, 理解, 以及运用人类的语言, 实现机器语言和人类
- 场景游戏里有很多关卡(可能有几百个了),理论上每次发布到外网前都要遍历各关卡看看会不会有异常,上次就有玩家在打某个关卡时卡住不动了,如果每个
- javascript曾一度被认为是玩具型的语言,因为它太容易上手,而且,javascript曾一度担任为web站点“打杂”的职责。直到Aja
- pycharm里边安装不上d2l包。按以下步骤操作即可成功解决。1、首先查看现在pycharm所在的环境File—>