1

次のような 2 次元リストがある場合:

TopRow = [1, 3, 5]
MiddleRow = [7, 9, 11]
BottomRow = [13, 15, 17]
matrix = [TopRow, MiddleRow, BottomRow]

2 次元リストと行と列の 2 つの値を入力として受け取り、2 次元リストの指定された行と列に指定された数値を出力する関数を作成する必要があります。行と列が次のように定義されているとしましょう:

row = 2
col = 3

このコードが値 (この場合は 11) を取得して出力しないのはなぜですか?

def get_value(matrix, row, col):
    print(matrix[row][col])
4

2 に答える 2

6

Python インデックスは 1 ではなく 0 から始まります。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 に答える