В следующем примере я предполагаю, что ключи словаря являются кортежем строки и столбца, а значение равно 1 или 0. Я устанавливаю размер ячейки равным 10x10 пикселей. В этом примере также определяется тег, который выглядит как « row , column » (например, «3,4»), так что вы можете легко установить цвет указанной ячейки c .
size=10 # pixels per cell
for row, column in data.keys():
tag = f"{row},{column}"
x0 = column*size
y0 = row*size
x1 = x0+size
y1 = y0+size
color = "red" if data[(row,column)] == 1 else "white"
canvas.create_rectangle(x0, y0, x1, y1, fill=color, tags=(tag,))
Используя тег, вы можете настроить указанную c ячейку через ее строку и столбец следующим образом:
canvas.itemconfigure("4,5", fill="yellow")
Простой способ инициализации словаря будет с это основа c l oop:
data = {}
for row in range(20):
for column in range(20):
data[(row, column)] = 0