Python 矩阵转置的几种方法小结

时间:2021-05-22

我就废话不多说了,直接上代码吧!

#Python的matrix转置matrix = [[1,2,3,4],[5,6,7,8],[9,10,11,12]] def printmatrix(m): for ele in m: for i in ele: print("%2d" %i,end = " ") print()#1、利用元祖的特性进行转置def transformMatrix(m):#此处巧妙的先按照传递的元祖m的列数,生成了r的行数 r = [[] for i in m[0]] for ele in m: for i in range(len(ele)): #【重点】:此处利用m的第ele行i列,并将该值追加到r的i行上;巧妙的利用了i r[i].append(ele[i]) #printmatrix(r)#方便查看数组是怎么赋值的,如不需要可注释掉 #print("*"*20)#打印分隔符 return r #2、利用zip函数生成转置矩阵def transformMatrix1(m): return zip(*m) #3、利用numpy模块的transpose方法def transformMatrix2(m): import numpy return numpy.transpose(m).tolist() print("第一种方法结果展示") printmatrix(transformMatrix(matrix))print("第二种方法结果展示")printmatrix(transformMatrix1(matrix))print("第二种方法的简洁代码展示")printmatrix(zip(*matrix))#为了代码更简洁,可以不用transformMatrix1函数,直接打印print("第三种方法的结果展示")printmatrix(transformMatrix2(matrix))

以上这篇Python 矩阵转置的几种方法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章