我有一個嵌套列表,命名ENV,在構造和另一方法創建填充定義如下的網格的元件:嵌套列表對象不支持索引
class Environment(object):
def __init__(self,rowCount,columnCount):
env = [[ None for i in range(columnCount)] for j in range(rowCount) ]
return env
def addElement(self, row, column):
self[row][column] = 0
在我創建代碼後來通過運行環境的實例:
myEnv = createEnvironment(6,6)
然後我想通過運行添加到環境中的元素:
myEnv.addElement(2,2)
所以我期望發生的事情是,我將接收一個新的Environment對象作爲一個6x6網格,在網格的2,2位置有一個0。但那並不奏效。
我有兩個錯誤:
- 我無法回到總比沒有從INIT方法的任何其他。
的主要問題我們試圖執行
addElement(2, 2)
我得到這個錯誤時:"TypeError: 'Environment' object does not support indexing.
我看着__getitem__
和__setitem__
方法,但無法讓他們工作在一個多維列表。有沒有更好的數據結構,我應該用來創建網格?