Местни хора на Python ()

Методът local () актуализира и връща речник на текущата таблица на местните символи.

Таблицата със символи е структура от данни, поддържана от компилатор, която съдържа цялата необходима информация за програмата.

Те включват имена на променливи, методи, класове и т.н.

Има главно два вида таблица със символи.

  1. Таблица с глобални символи
  2. Таблица на местните символи

А Глобални символната таблица на магазините цялата информация, свързана с глобалния обхват на програмата, и е достъпен в 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()речникът може да не променя информацията в таблицата на местните жители.

Интересни статии...