Сообщить об ошибке.

Функция locals() в Python, переменные локальной области

Возвращает словарь с переменные и их значениями локальной области видимости

Синтаксис:

locals()

Ссылка для тех, кто ищет инструкцию nonlocal.

Возвращаемое значение:

  • словарь dict, представляющий текущую локальную таблицу символов.

Описание:

Функция locals() обновляет и возвращает словарь с переменными и их значениями из текущей локальной области видимости.

Если функция вызвана внутри другой функции, то она возвращает также свободные (объявленные вне функции, но используемые внутри неё) переменные.

  • Обратите внимание, что на уровне модуля, функции locals() и globals() возвращают один и тот же словарь.
  • Содержимое словаря не следует изменять, потому как изменённые значения могут быть проигнорированы интерпретатором!

Примеры получения переменных из локальной области.

asd = 1

def func(a=1):
    b = 2
    c = a + b
    x = locals()
    print(x)

func()
# Заметьте в словаре нет глобальной переменной 'asd'
{'c': 3, 'b': 2, 'a': 1}