Se a matriz for: matriz = [[1,2,3], [4,5,6], [7,8,9]]
O primeiro método não usa espaço adicional na matriz:
for i in range(len(matrix)):
for j in range(0, i):
matrix[i][j],matrix[j][i] = matrix[j][i],matrix[i][j]
Em segundo lugar, use espaço extra:
res = []
for i in range(len(matrix[0])):
temp = []
for j in range(len(matrix)):
temp.append(matrix[j][i])
res.append(temp)
O terceiro tipo, completamento de uma linha
matrix = [[num[i] for num in matrix] for i in range(len(matrix[0]))]