Методът local () актуализира и връща речник на текущата таблица на местните символи.
Таблицата със символи е структура от данни, поддържана от компилатор, която съдържа цялата необходима информация за програмата.
Те включват имена на променливи, методи, класове и т.н.
Има главно два вида таблица със символи.
- Таблица с глобални символи
- Таблица на местните символи
А Глобални символната таблица на магазините цялата информация, свързана с глобалния обхват на програмата, и е достъпен в Python, използвайки глобални (метод).
Глобалният обхват съдържа всички функции, променливи, които не са свързани с нито един клас или функция.
По същия начин, таблицата с локални символи съхранява цялата информация, свързана с локалния обхват на програмата, и е достъпна в Python с помощта на locals()
метод.
Локалният обхват може да бъде в рамките на функция, в клас и т.н.
Препоръчително четене: Пространство от имена и обхват на в Python
Синтаксис на местните ()
Синтаксисът на locals()
метода е:
местни ()
местни () параметри
locals()
методът не взема никакви параметри.
Върната стойност от местните ()
locals()
методът актуализира и връща речника, свързан с текущата таблица на местните символи.
Пример 1: Как местните () работят в Python?
locals()
Изход
('In': ('', 'local ()'), 'Out': (), '_': '', '__': '', '___': '', '__builtin__':, ' __builtins__ ':,' __name__ ':' __main__ ',' _dh ': (' / home / repl '),' _i ':' ',' _i1 ':' local () ',' _ih ': (' ', 'местни ()'), '_ii': '', '_iii': '', '_oh': (), '_sh':, 'exit':, 'get_ipython':>, 'quit':)
Забележка: globals()
и locals()
таблицата със символи за глобалната среда е една и съща.
Пример 2: Как местните () работят в локален обхват?
def localsNotPresent(): return locals() def localsPresent(): present = True return locals() print('localsNotPresent:', localsNotPresent()) print('localsPresent:', localsPresent())
Изход
местниNotPresent: () местниPresent: ('настояще': Вярно)
Пример 3: Актуализиране на речникови стойности на local ()
def localsPresent(): present = True print(present) locals()('present') = False; print(present) localsPresent()
Изход
Вярно вярно
За разлика от globals()
речника, който отразява промяната в действителната глобална таблица, locals()
речникът може да не променя информацията в таблицата на местните жители.