用Python转置矩阵

时间:2019-03-26 09:30:25

标签: python matrix transpose

我是Python的新手,我正在研究矩阵的转置,但是我发现任何简短的过程都需要很长的代码!

mymatrix=[(1,2,3),(4,5,6),(7,8,9),(10,11,12)] 
for myrow in mymatrix: 
print(myrow) 
print("\n") 
t_matrix = zip(*mymatrix) 
for myrow in t_matrix: 
print(myrow)

3 个答案:

答案 0 :(得分:7)

您需要安装numpy才能导入它  numpy转置在以下情况下返回相似结果  应用于一维矩阵

import numpy  
mymatrix=[[1,2,3],[4,5,6]] 
print(mymatrix) 
print("\n") 
print(numpy.transpose(mymatrix)) 

答案 1 :(得分:4)

import numpy as np
matrix = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]] )
print(matrix.T)

不使用numpy


编辑:同时适用于Python2和Python3

Python3

[*zip(*matrix)]

Python2

zip(*matrix)

答案 2 :(得分:4)

使用zip

mymatrix=[(1,2,3),(4,5,6),(7,8,9),(10,11,12)] 
myTransposedMatrix = list(zip(*mymatrix))

>>> myTransposedMatrix
[(1, 4, 7, 10), (2, 5, 8, 11), (3, 6, 9, 12)]