【问题标题】:Matrix Transpose ( List index out of range error )矩阵转置(列表索引超出范围错误)
【发布时间】:2020-09-15 09:35:38
【问题描述】:
def transpose(A,size):
for i in range(size):
    for j in range(i,size):
        temp=A[i][j]
        A[i][j]=A[j][i]
        A[j][i]=temp

这是我的矩阵 transpose() 函数,但是当我运行它时,编译器会抛出一个错误,提示列表索引超出范围,我不知道为什么。

【问题讨论】:

    标签: python transpose indexoutofrangeexception


    【解决方案1】:

    将范围从 (i,size) 更改为 (size) 将解决超出范围的错误

    def transpose(A,size):
        for i in range(size):
            for j in range(size):
                temp=A[i][j]
                A[i][j]=A[j][i]
                A[j][i]=temp
    

    但是矩阵A不会因为引用而被修改

    转置最好使用新的矩阵

    def transpose(A,size):
      B=list([0 for i in range(size)] for j in range(size))
      for i in range(size):
        for j in range(size):
          B[i][j]=A[j][i]
                
      print(B)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-02-19
      • 2012-11-26
      • 2017-02-12
      • 2013-03-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多