Вам нужно где-то хранить возвращаемое значение функции; как только он выходит, все маленькое пространство с отступами под функцией исчезает вместе с переменной next
. Я думаю, что вы действительно хотите:
next = action()
Таким образом, с уничтоженным небольшим пространством имен функции у вас все равно будет копия next
на верхнем уровне вашей программы.
Если эта особенность Python звучит излишне деструктивно, поверьте мне: гораздо сложнее управлять сложными программами, если вы можете рассчитывать на то, что каждая функция - это ее собственный маленький мир, который не вносит глобальных изменений в переменные, которые вы определили! 1008 *