If the matrix is: matrix = [[1,2,3], [4,5,6], [7,8,9]]
The first method does not use additional array space:
for i in range(len(matrix)):
for j in range(0, i):
matrix[i][j],matrix[j][i] = matrix[j][i],matrix[i][j]
Second, use extra space:
res = []
for i in range(len(matrix[0])):
temp = []
for j in range(len(matrix)):
temp.append(matrix[j][i])
res.append(temp)
The third type, one-line completion
matrix = [[num[i] for num in matrix] for i in range(len(matrix[0]))]