У меня есть карта, назовем ее M, которая содержит данные, отображаемые через N измерений.Итерация по N измерениям в Python
# If it was a 2d map, I could iterate it thusly:
start, size = (10, 10), (3, 3)
for x in range(start[0], start[0]+size[0]):
for y in range(start[1], start[1]+size[1]):
M.get((x, y))
# A 3d map would add a for z in ... and access it thusly
M.get((x, y, z))
# And so on.
Мой вопрос: Как создать итератор, который может привести к правильной последовательности итераций? То есть, учитывая start, size = (10, 10), (3, 3)
, он даст последовательность 2-кортежей (10, 10), (10, 11), (10, 12), (11, 10), (11, 11)
и т. Д. При заданном start, size = (10, 10, 10), (3, 3, 3)
это даст правильную последовательность из 3 кортежей.
Да, я пробовал себя, но голова взорвалась. Или я не могу оправдать трату времени, выясняя это, хотя это весело. Выбирай :)