Python | функия не видит переменную

мне нужно сделать состояни при которых будут отрисовываться разные вещи, но когда я хочу изменить это состояние принажатии кнопки, то почему функция не видит переменную "state", в которую я хочу сунуть 'MENU'

state = 'START'
def handle_state():
    if state == 'START':
        if start_button.draw(screen):
            state = 'MENU'

Ответы (1 шт):

Автор решения: denisnumb

Используйте глобальные переменные. Чтобы изменять переменную, находящуюся не внутри функции, нужно объявить ее как глобальную.

Для этого вначале функции пропишите

global название_переменной

В вашем коде будет так:

state = 'START'
def handle_state():
    global state
    if state == 'START':
        if start_button.draw(screen):
            state = 'MENU'
→ Ссылка