Функция
setRand()
в вашем коде не изменяет глобальную переменную
NUMBER
, а лишь создаёт локальную переменную с таким же именем, перекрывающую глобальную переменную. Добавьте следующее в функцию, чтобы она изменяла значение глобальной переменной
NUMBER
:
def setRand():
global NUMBER
NUMBER = random.randrange(10)
print(NUMBER)
Советую познакомиться с тем, как устроены
области видимости в Python.
Но, как упомянули в комментарии к вопросу, лучше не использовать механизм с глобальными переменными в этом коде, а найти более надёжное решение задачи. Думаю, что можно применить конечный автомат (FSM), который
реализован в aiogram.