Я заметил, что это ваше требование:
... где print (arrayName) печатает фактический массив вместо строки
Если это так, вы может использовать следующий упрощенный шаблон проектирования:
arrays = [array1, array2, array3]
for array in arrays:
print(array)
И, при модификации вашего кода, так что print () будет «печатать фактический массив вместо строки»:
temp1 = [[7, 2, 4],
[5, 0, 6],
[8, 3, 1]]
temp2 = [[1, 1, 1],
[1, 1, 1],
[1, 1, 1]]
temp3 = [[2, 2, 2],
[2, 2, 2],
[2, 2, 2]]
temps = [temp1, temp2, temp3]
for i in temps:
print(i)
Некоторые дальнейшие мысли:
Я бы избегал методов eval () или exe c () Python, как предлагали другие комментаторы. Возможны более простые решения; у вас нет конкретной причины использовать динамическое выполнение c.
Существует более чистый способ рефакторинга вашего кода, но я предоставляю приведенный выше ответ, который больше отражает вашу структуру кода непосредственно, чтобы избежать путаницы.