python矩阵乘积函数 python矩阵乘法函数

python实现矩阵乘法的方法

python实现矩阵乘法的方法

10年的浦北网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整浦北建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“浦北网站设计”,“浦北网站推广”以来,每个客户项目都认真落实执行。

本文实例讲述了python实现矩阵乘法的方法。分享给大家供大家参考。

具体实现方法如下:

def matrixMul(A, B):

res = [[0] * len(B[0]) for i in range(len(A))]

for i in range(len(A)):

for j in range(len(B[0])):

for k in range(len(B)):

res[i][j] += A[i][k] * B[k][j]

return res

def matrixMul2(A, B):

return [[sum(a * b for a, b in zip(a, b)) for b in zip(*B)] for a in A]

a = [[1,2], [3,4], [5,6], [7,8]]

b = [[1,2,3,4], [5,6,7,8]]

print matrixMul(a,b)

print matrixMul(b,a)

print "-"*90

print matrixMul2(a,b)

print matrixMul2(b,a)

print "-"*90

from numpy import dot

print map(list,dot(a,b))

print map(list,dot(b,a))

#Out:

#[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]

#[[50, 60], [114, 140]]

#------------------------------------------------------------------------

#[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]

#[[50, 60], [114, 140]]

#------------------------------------------------------------------------

#[[11, 14, 17, 20], [23, 30, 37, 44], [35, 46, 57, 68], [47, 62, 77, 92]]

#[[50, 60], [114, 140]]

希望本文所述对大家的Python程序设计有所帮助。

在python3里怎么实现两个矩阵相乘

def mmult(a,b):

zip_b = zip(*b)

return [[sum(ele_a*ele_b for ele_a, ele_b in zip(row_a, col_b))

for col_b in zip_b] for row_a in a]

x = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]

y = [[1,2],[1,2],[3,4]]

print(mmult(x,y))

或者可以直接用numpy

import numpy as np # I want to check my solution with numpy

mx = np.matrix(x)

my = np.matrix(y)

print(mx * my)

python矩阵乘法是什么?

python实现矩阵乘法的方法

def matrixMul(A, B):

res = [[0] * len(B[0]) for i in range(len(A))]

for i in range(len(A)):

for j in range(len(B[0])):

for k in range(len(B)):

res[i][j] += A[i][k] * B[k][j]

return res

def matrixMul2(A, B):

return [[sum(a * b for a, b in zip(a, b)) for b in zip(*B)] for a in A]

a = [[1,2], [3,4], [5,6], [7,8]]

b = [[1,2,3,4], [5,6,7,8]]

print matrixMul(a,b)

print matrixMul(b,a)

乘积形式

除了上述的矩阵乘法以外,还有其他一些特殊的“乘积”形式被定义在矩阵上,值得注意的是,当提及“矩阵相乘”或者“矩阵乘法”的时候,并不是指代这些特殊的乘积形式,而是定义中所描述的矩阵乘法。在描述这些特殊乘积时,使用这些运算的专用名称和符号来避免表述歧义。

python 怎么实现矩阵运算

1.numpy的导入和使用

data1=mat(zeros((

)))

#创建一个3*3的零矩阵,矩阵这里zeros函数的参数是一个tuple类型(3,3)

data2=mat(ones((

)))

#创建一个2*4的1矩阵,默认是浮点型的数据,如果需要时int类型,可以使用dtype=int

data3=mat(random.rand(

))

#这里的random模块使用的是numpy中的random模块,random.rand(2,2)创建的是一个二维数组,需要将其转换成#matrix

data4=mat(random.randint(

10

,size=(

)))

#生成一个3*3的0-10之间的随机整数矩阵,如果需要指定下界则可以多加一个参数

data5=mat(random.randint(

,size=(

))

#产生一个2-8之间的随机整数矩阵

data6=mat(eye(

,dtype=

int

))

#产生一个2*2的对角矩阵

a1=[

]; a2=mat(diag(a1))

#生成一个对角线为1、2、3的对角矩阵


当前文章:python矩阵乘积函数 python矩阵乘法函数
本文URL:http://scyanting.com/article/docsioj.html