如何在Python中从二维列表中获取值
如果我有一个这样的二维列表:
TopRow = [1, 3, 5]
MiddleRow = [7, 9, 11]
BottomRow = [13, 15, 17]
matrix = [TopRow, MiddleRow, BottomRow]
我需要写一个函数,这个函数接收这个二维列表和两个值,行和列,作为输入,然后在指定的行和列中打印出对应的数字。假设行和列是这样定义的:
row = 2
col = 3
为什么这段代码没有获取到这个值(在这个例子中是11)并打印出来呢?
def get_value(matrix, row, col):
print(matrix[row][col])
2 个回答
1
索引是从0开始的,所以对于你的矩阵来说,位置是[0][0]到[2][2]。
>>> TopRow = [1, 3, 5]
>>> MiddleRow = [7, 9, 11]
>>> BottomRow = [13, 15, 17]
>>> matrix = [TopRow, MiddleRow, BottomRow]
>>>
>>> def get_value(matrix, row, col):
... print(matrix[row][col])
...
>>> get_value(matrix, 1, 2)
11
>>> get_value(matrix, 2, 1)
15
7
在Python中,索引是从0开始的,而不是从1开始的。所以,11在第1行第2列的位置。