В Python по умолчанию в функции используются локальные переменные. 2 И даже если есть глобальная переменная с таким же именем, то в функции она будет переопределена. 2 То есть глобальная переменная в теле функции — это совершенно другая переменная, которая не имеет отношение к той, которая объявлена перед функцией. 2
Чтобы изменить глобальную переменную внутри функции, необходимо использовать ключевое слово global перед именем переменной. 15 Оно указывает, что переменная, которую используют в функции, является глобальной, а не локальной. 5
Однако стоит помнить, что изменение глобальных переменных внутри функций считается плохой практикой в программировании, так как это может сделать код менее понятным и трудным для отладки. 5 Лучше передавать значение как аргумент функции и возвращать изменённое значение, если это возможно. 5