Область видимости переменных в Python

Предупреждение
Последний раз данная статья обновлялась 11.05.2022, информация может быть устаревшей.

Список вопросов к Python собеседованию

Область видимости (scope) определяет контекст переменной, в рамках которого ее можно использовать. В Python существует три области видимости:

  • локальная
  • глобальная
  • нелокальная Python 3.х

Основные моменты:

  • Изнутри функции видны переменные, которые были определены и внутри нее и снаружи.
  • Переменные, определенные внутри функции – локальные, снаружи – глобальные.
  • Снаружи функций не видны никакие переменные, определенные внутри них.
  • Изнутри функции можно изменять значение переменных, которые определены в глобальной области видимости с помощью спецификатора global.
  • Изнутри вложенной функции с помощью спецификатора nonlocal можно изменять значения переменных, которые были определены во внешней функции, но не находятся в глобальной области видимости.

Источники:

Хабр статья

Документация Python