在Python 中定義二維數組
嘗試定義二維數組而不初始化其長度時,您可能會遇到IndexError,如語法所示:
Matrix = [][]
出現此錯誤是因為Python要求外部列表為最初用內部列表初始化。 Python 將此過程稱為“列表理解”,如以下程式碼所示:
# Create a list containing 5 lists, each of 8 items, all set to 0 w, h = 8, 5 Matrix = [[0 for x in range(w)] for y in range(h)]
初始化陣列後,您可以在其中新增項目。例如:
Matrix[0][0] = 1 Matrix[6][0] = 3 # error! 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”作為內部列表,使用“y”作為外部列表,特別是對於非方形數組。
以上是如何在Python中正確定義和初始化二維數組?的詳細內容。更多資訊請關注PHP中文網其他相關文章!