python输出矩阵的转置_Python 矩阵转置的几种方法小结
我就廢話不多說了,直接上代碼吧!
#Python的matrix轉(zhuǎn)置
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、利用元祖的特性進(jìn)行轉(zhuǎn)置
def transformMatrix(m):
#此處巧妙的先按照傳遞的元祖m的列數(shù),生成了r的行數(shù)
r = [[] for i in m[0]]
for ele in m:
for i in range(len(ele)):
#【重點(diǎn)】:此處利用m的第ele行i列,并將該值追加到r的i行上;巧妙的利用了i
r[i].append(ele[i])
#printmatrix(r)#方便查看數(shù)組是怎么賦值的,如不需要可注釋掉
#print("*"*20)#打印分隔符
return r
#2、利用zip函數(shù)生成轉(zhuǎn)置矩陣
def transformMatrix1(m):
return zip(*m)
#3、利用numpy模塊的transpose方法
def transformMatrix2(m):
import numpy
return numpy.transpose(m).tolist()
print("第一種方法結(jié)果展示")
printmatrix(transformMatrix(matrix))
print("第二種方法結(jié)果展示")
printmatrix(transformMatrix1(matrix))
print("第二種方法的簡(jiǎn)潔代碼展示")
printmatrix(zip(*matrix))#為了代碼更簡(jiǎn)潔,可以不用transformMatrix1函數(shù),直接打印
print("第三種方法的結(jié)果展示")
printmatrix(transformMatrix2(matrix))
以上這篇Python 矩陣轉(zhuǎn)置的幾種方法小結(jié)就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持。
總結(jié)
以上是生活随笔為你收集整理的python输出矩阵的转置_Python 矩阵转置的几种方法小结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 唯品金融可以协商还款吗 能和唯品金融协商
- 下一篇: 电费出账单一般都是几号 每个月几号出电费