首页 > 解决方案 > 如何调用矩阵中的数字

问题描述

这是我的矩阵设置:

for a in b:
    size_x = len(a) + 1
    size_y = len(b) + 1
    matrix = np.zeros ((size_x, size_y))
    for x in range(size_x):
        matrix [x, 0] = x
    for y in range(size_y):
        matrix [0, y] = y

    for x in range(1, size_x):
        for y in range(1, size_y):
            if a[x-1] == b[y-1]:
                matrix [x,y] = min(
                                matrix[x-1, y] + 1,
                                matrix[x-1, y-1],
                                matrix[x, y-1] + 1
                                )
            else:
                matrix [x,y] = min(
                                matrix[x-1,y] + 1,
                                matrix[x-1,y-1] + 1,
                                matrix[x,y-1] + 1
                                )
    print(matrix)

这将给出输出,例如

         t   e   s   t
  [[ 0.  1.  2.  3.  4.]
 t [ 1.  0.  1.  2.  3.]
 e [ 2.  1.  0.  1.  2.]
 x [ 3.  2.  1.  1.  2.]
 t [ 4.  3.  2.  1.  1.]]

其中右下角是最终值。我如何将其取出并将其添加到列表中?

标签: pythonmatrix

解决方案


您可以使用以下表达式访问数组arr的第i个索引: arr[i]。为了回答您的问题-> 访问二维矩阵的右下角值,只需使用,

matrix[matrix.length-1][matrix[matrix.length-1].length-1]

或更好

lastRowIndex = matrix.length-1;
lastColIndex = matrix[lastRowIndex].length-1;
bottomRightValue = matrix[lastRowIndex][lastColIndex]

推荐阅读