Python實現矩陣加法和乘法的方法分析
更新時間:2017年12月19日 11:56:42 作者:逍遙浪人
這篇文章主要介紹了Python實現矩陣加法和乘法的方法,結合實例形式對比分析了Python針對矩陣的加法與乘法運算相關操作技巧,需要的朋友可以參考下
本文實例講述了Python實現矩陣加法和乘法的方法。分享給大家供大家參考,具體如下:
本來以為python的矩陣用list表示出來應該很簡單可以搞。。其實發(fā)現有大學問。
這里貼出我寫的特別不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相關內容感興趣的讀者可查看本站專題:《Python數據結構與算法教程》、《Python加密解密算法與技巧總結》、《Python編碼操作技巧總結》、《Python函數使用技巧總結》、《Python字符串操作技巧匯總》及《Python入門與進階經典教程》
希望本文所述對大家Python程序設計有所幫助。
相關文章
Python調用系統(tǒng)命令os.system()和os.popen()的實現
這篇文章主要介紹了Python調用系統(tǒng)命令os.system()和os.popen()的實現,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-12-12django-orm F對象的使用 按照兩個字段的和,乘積排序實例
這篇文章主要介紹了django-orm F對象的使用 按照兩個字段的和,乘積排序實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-05-05