在python中添加两个矩阵

时间:2013-11-11 00:48:55

标签: python-3.3

def addM(a, b):
    res = []
    for i in range(len(a)):
        row = []
        for j in range(len(a[0])):
            row.append(a[i][j]+b[i][j])
        res.append(row)
    return res

我在这里发现这个代码是由@Petar Ivanov制作的,这段代码添加了两个矩阵,我真的不明白第三行,为什么他使用len(a)和第5行,为什么他使用len (A [0])。在第6行,为什么它是[i] [j] + b [i] [j]?

1 个答案:

答案 0 :(得分:2)

此处的矩阵是列表列表,例如2x2矩阵将如下所示:a=[[0,0],[0,0]]。然后很容易看到:

  1. len(a) - 行数。
  2. len(a[0]) - 列数(因为这是一个矩阵,a[0]的长度与任何a[i]的长度相同。)
  3. 这样,i是行数,j是列数,a[i][j]+b[i][j]只是将两个矩阵的元素相加,这两个矩阵放在相同的位置矩阵。
  4. 要使所有这些工作正常,ab应具有相同的形状(因此,行数和列数将匹配)。