矩阵转置功能无法正常工作

时间:2019-01-10 14:00:37

标签: python python-3.x matrix transpose

我有一个要转置的矩阵,我之前已经做过,并且可以使用,但是直到今天,当我浏览我的代码并对其进行更新时,它突然停止了工作。我真的不知道为什么,因为以前效果很好。这是代码的主要部分

class Matrix:
    def __init__(self, cols, rows):
        self.cols = cols
        self.rows = rows
        self.matrix = [[0]*self.rows]]*self.cols

    def transpose(self):
        transposed_matrix = Matrix(self.rows, self.cols)

        for i in range(self.cols):
            for j in range(self.rows):
                transposed_matrix.matrix[j][i] = self.matrix[i][j]

        return transposed_matrix

所以说我有一个像这样的矩阵

[
     [0, 1, 1, 0, 0, 0]
     [1, -1, 0, 0, 0, -1]
     [-1, -1, 0, -1, 1, 0]
     [-1, 1, -1, -1, -1, 0]
]

我期待

[
    [0, 1, -1, -1]
    [1, -1, -1, 1]
    [1, 0, 0, -1, -1]
    [0, 0, -1, -1]
    [0, 0, 1, -1]
    [0, -1, 0, 0]
]

但是我得到了

[
    [0, -1, 0, 0]
    [0, -1, 0, 0]
    [0, -1, 0, 0]
    [0, -1, 0, 0]
    [0, -1, 0, 0]
    [0, -1, 0, 0]
]

如果您可以帮助您对此有所了解,那将不胜感激

0 个答案:

没有答案