在Python中定義二維數組
在沒有指定長度的情況下初始化二維數組時,可能會遇到錯誤“ IndexError:清單索引超出範圍。
要解決此問題,請使用列表理解來建立數組:
w, h = 8, 5 Matrix = [[0 for x in range(w)] for y in range(h)]
這會建立一個list 包含5 個列表,每個列表有8 個項目,全部都設定為零。
然後您可以將元素加入陣列中,如下所示:
Matrix[0][0] = 1 Matrix[6][0] = 3 # error! IndexError: list index out of range Matrix[0][6] = 3 # valid
請注意,矩陣是「y」位址主數,這表示外部索引( y) 位於內部索引(x) 之前。這與其他一些程式語言不同。
例如:
print Matrix[0][0] # prints 1 x, y = 0, 6 print Matrix[x][y] # prints 3; be careful with indexing!
雖然您可以根據需要命名索引,但使用「x」表示內部和外部清單可能會導致索引非方陣時的混亂。
以上是如何在 Python 中正確初始化和索引二維數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!