如果我有这样的二维列表:
TopRow = [1, 3, 5]
MiddleRow = [7, 9, 11]
BottomRow = [13, 15, 17]
matrix = [TopRow, MiddleRow, BottomRow]
我需要创建一个函数,它接受二维列表和两个值,row和col,作为输入,然后在指定的行和二维列表的列中打印出指定的数字。假设row和col的定义如下:
row = 2
col = 3
为什么这段代码没有检索到值(在本例中为11)并将其打印出来?
def get_value(matrix, row, col):
print(matrix[row][col])
答案 0 :(得分:6)
Python索引从0开始,而不是1. 11在第1行,第2列。
答案 1 :(得分: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