# transpose matrix even length of lines is different
def transpose(matrix):
maxLineLen = 0
tLine = []
tMatrix = []
# compute max length in lines
for i in matrix:
if maxLineLen < len(i):
maxLineLen = len(i)
# transpose matrix
for i in range(0,maxLineLen):
for j in matrix:
# prevent out of index
if i <= len(j) - 1:
tLine.append(j[i])
tMatrix.append(tLine[:])
del(tLine[:])
return tMatrix
test = [['z', 'r', 'p'], ['z', 'x', 's', 'a']]
print transpose(test)
[Python]不定长矩阵转置
最新推荐文章于 2025-03-29 09:58:13 发布