1

如果我有这样的二维列表:

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])
4

2 回答 2

6

Python 索引从 0 开始,而不是 1。11 位于第 1 行第 2 列。

于 2013-03-18T03:12:07.220 回答
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
于 2013-03-18T03:13:27.520 回答