我使用列表理解來創建一個嵌套的字典,使得在網格中的每個單元都有它被稱爲stocklist字典的自己的副本...從嵌套deep.copy字典Retreiving數據通過列表理解Python中取得
import copy
stocklist = {'a': 0, 'b': 0, 'c': 0}
stockgrid = [[copy.deepcopy(stocklist) for w in range(WIDTH)] for h in range(HEIGHT)]
現在我將通過網格的每個元素和查找項目中的每個細胞與另一格(鍵的網格)的相應單元格的值進行比較的字典...
keygrid = [["key" for w in range(WIDTH)] for h in range(HEIGHT)]
所以這是我必須遍歷每行和每列的代碼,並比較內容與stocklists的電網匹配的密鑰內容的keygrid,並添加1,如果有匹配的值...
for row in range(HEIGHT):
for col in range(WIDTH):
if stockgrid[row][col] == keygrid[row][col]:
stockgrid value of key in this cells dictionary = value + 1
上面的最後一行是當然的純假,真不知道語法應該如何看,雖然,我需要的[行] [COL]位來告訴電腦我處理的哪個單元stockgrid與 - 但後來我怎麼告訴它+1值的匹配鍵?希望這是有道理的。此外,它可能需要有「keygrid」還包含值的字典或列表中的每個細胞,使多個鍵可以在stockgrid字典對應的小區進行匹配,頭腦博格爾斯在這句法什麼將會!任何建議真的很感激。
是啊,你的解釋是正確的,而在stockgrid每個單元字典的副本將是所有其他在網格這個循環後拷貝(當然,這取決於那些已匹配和+1)不同。我會嘗試你的解決方案,實際上期待着它。非常感謝。 – SamChancer
@SamChancer完美的!我還增加的情況下的答案時,你有內部keygrid鍵列表。我希望它能像你想要的那樣工作。 –