zoukankan      html  css  js  c++  java
  • python实现矩阵乘法的方法

    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)
    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程序设计有所帮助。


     

  • 相关阅读:
    删除文件夹
    遍历文件夹
    二分查找
    轻松记住大端小端的含义(附对大端和小端的解释)
    Motorola和Intel格式报文解析的区别
    Intel格式与Motorola格式的区别
    ADC采样工作原理详解
    软件概要设计做什么
    共模干扰和差模干扰
    什么是GPIO?
  • 原文地址:https://www.cnblogs.com/amengduo/p/9586450.html
Copyright © 2011-2022 走看看