关于leetcode上旋转矩阵的问题!

百思不得其解哪里出了问题
class Solution:
    def rotate(self, matrix: List[List[int]]) -> None:
        """
        Do not return anything, modify matrix in-place instead.
        """
        j=i=0
        matrix_1=matrix
        n=len(matrix)
        while i<n:
            while j<n:
               (matrix_1[i])[j]=(matrix[n-1-j])[i]
                j+=1
            j=0
            i+=1
        


![img](运行结果及报错内容 https://img-mid.csdnimg.cn/release/static/image/mid/ask/285663747936172.png "#left")

矩阵不全是方阵,还有

a = [[1,2,3],[4,5,6],[7,8,9]]
A = [[7,4,1],[8,5,2],[9,6,3]]
b = [[1,2,3,4],[5,6,7,8],[9,10,11,12]]
B = [[9,5,1],[10,6,2],[11,7,3],[12,8,4]]
c = [[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]]
C = [[13,9,5,1],[14,10,6,2],[15,11,7,3],[16,12,8,4]]

class Solution:
    def rotate(self, matrix):
         matrix[:] = list(map(list, zip(*matrix)))
         for m in matrix: m[:] = sorted(m,reverse=True)

s = Solution()
s.rotate(a)
print(a,a==A)

s.rotate(b)
print(b,b==B)

s.rotate(c)
print(c,c==C)