Область видимости переменных в Python
Предупреждение
Последний раз данная статья обновлялась 11.05.2022, информация может быть устаревшей.
Список вопросов к Python собеседованию
Область видимости (scope) определяет контекст переменной, в рамках которого ее можно использовать. В Python существует три области видимости:
- локальная
- глобальная
- нелокальная
Основные моменты:
- Изнутри функции видны переменные, которые были определены и внутри нее и снаружи.
- Переменные, определенные внутри функции – локальные, снаружи – глобальные.
- Снаружи функций не видны никакие переменные, определенные внутри них.
- Изнутри функции можно изменять значение переменных, которые определены в глобальной области видимости с помощью спецификатора global.
- Изнутри вложенной функции с помощью спецификатора nonlocal можно изменять значения переменных, которые были определены во внешней функции, но не находятся в глобальной области видимости.
Источники: