这是纯 python 中的一行逆时针矩阵旋转(即,没有 numpy):
new_matrix = [[m[j][i] for j in range(len(m))] for i in range(len(m[0])-1,-1,-1)]
如果你想在函数中执行此操作,那么
def rotate_matrix( m ):
return [[m[j][i] for j in range(len(m))] for i in range(len(m[0])-1,-1,-1)]
无论哪种方式,结果为
m = [ [1,2,3], [2,3,3], [5,4,3]]
is
[[3, 3, 3], [2, 3, 4], [1, 2, 5]]
另外,如果你想要通常的转置,那么简单的一行纯Python版本是
[[m[j][i] for j in range(len(m))] for i in range(len(m[0]))]