Автор оригинала: Chris.
Python’s Местные жители ()
Функция возвращает Словарь Имя -> Объект
сопоставления. Имена являются теми, которые определены в текущем локальном объеме, то есть, определенные в текущем модуле, классе, методах или функциях – независимо от того, что является самым локальным объемом. Объекты являются значениями, связанными с этими именами. Например, если вы устанавливаете переменную х = [1, 2, 3]
В вашей локальной функции объем, Местные жители ()
Словарь будет содержать имя 'x'
и ссылка на объект на [1, 2, 3]
.
Похожие учебники: Пространства имен сделали простой
Примеры использования
Узнайте пример! Вот отформатированный пример того, как использовать Местные жители ()
Встроенная функция :
def f(): x = [1, 2, 3] print(locals()) x = 42 f() # {'x': [1, 2, 3]}
В локальном объеме функции F
Вы определяете новую переменную, названную 'x'
и установить его в список объектов [1, 2, 3]
. Вы также определяете другую переменную х
На глобальном уровне модуля, а не в пределах локальный спектр функций . Если вы позвоните Местные жители ()
Функция внутри функции возвращает словарь Имя -> Объект
сопоставления. Среди отображений в словаре, вы найдете сопоставление 'x': [1, 2, 3]
Отказ Таким образом, локальный объем функции превосходит глобальный объем уровня модуля.
Вы также можете изменить глобальную переменную, используя Местные жители ()
толковый словарь:
>>> friend = 'Alice' >>> locals()['friend'] = 'Bob' >>> friend 'Bob'
Это полезно, если вы хотите изменить некоторые динамические переменные, которые вы еще не знаете при времени программирования. Например, вы хотите, чтобы пользователь дал вам строку переменной для обновления. Ваша программа имеет только строку, поэтому единственный способ обновить соответствующее глобальное имя – использовать Местные жители ()
толковый словарь.
Видео местные жители ()
Итак, как работает синтаксис формально?
Синтаксис местных жителей ()
Вы используете Местные жители ()
метод без аргумента.
Syntax: locals() # Returns dictionary of name --> object pairs defined in your local scope.
Аргументы | – | – |
Возвращаемое значение | обдумывать | Возвращает словарь (имя -> объектов) сопоставления всех имен, которые вы можете использовать в локальном Scope-E.g., В рамках функции или метода. Это включает в себя имя, которое вы определяете в локальном объеме, но не имена, определенные в глобальном объеме. |
Python Locals () возвращаемая стоимость
Возвращает словарь (имя -> объектов) сопоставления всех имен, которые вы можете использовать в локальном Scope-E.g., В рамках функции или метода. Это включает в себя имя, которое вы определяете в локальном объеме, но не имена, определенные в глобальном объеме.
l = locals() print(type(l)) #
Python Locals () Упражнения интерактивных оболочек
Давайте имеем практический пример, как использовать Местные жители ()
Функция в реальном приложении, которое просит пользователю вводить любую переменную для проверки текущего значения:
Упражнение : Угадайте вывод этого кода-фрагмента – какое имя находится в словаре Locals ()? Затем запустите код и проверьте свой результат!
Но прежде чем мы будем двигаться дальше, я рад представить вам мою новую книгу Python Python One-listers (Amazon Link).
Если вам нравятся одноклассники, вы будете любить книгу. Это научит вам все, что нужно знать о Одно строка кода Python. Но это тоже Введение в компьютерную науку , наука о данных, машин обучения и алгоритмы. Вселенная в одной строке Python!
Книга была выпущена в 2020 году с помощью книги по программированию мирового класса Nostarch Press (San Francisco).
Ссылка: https://nostarch.com/pythononeliners.
Решение : Интерактивные результаты упражнений в словаре местных слоев с именем «Лиз»
потому что когда Местные жители ()
называется, самое локальное определение имени было «Лиз»
Отказ
Резюме
Python’s Местные жители ()
Функция возвращает словарь Имя -> Объект
сопоставления.
- Имена являются теми, которые определяются локально, то есть, определенные в вашем текущем локальном объеме (например, функции).
- Объекты являются значениями, связанными с этими именами.
Например, если вы устанавливаете переменную х = [1, 2, 3]
, Местные жители ()
Словарь будет содержать имя 'x'
и ссылка на объект на [1, 2, 3]
.
def f(): x = [1, 2, 3] print(locals()) x = 42 f() # {'x': [1, 2, 3]}
Я надеюсь, что вам понравилось статью! Чтобы улучшить свое образование Python, вы можете присоединиться к популярной академии по электронной почте Free Finxter:
Хотите увеличить свои навыки Python в веселой и легкой потребности? Рассмотрим следующие ресурсы и стать магистральным кодером!
Куда пойти отсюда?
Достаточно теории, давайте познакомимся!
Чтобы стать успешным в кодировке, вам нужно выйти туда и решать реальные проблемы для реальных людей. Вот как вы можете легко стать шестифункциональным тренером. И вот как вы польские навыки, которые вам действительно нужны на практике. В конце концов, что такое использование теории обучения, что никто никогда не нуждается?
Практические проекты – это то, как вы обостряете вашу пилу в кодировке!
Вы хотите стать мастером кода, сосредоточившись на практических кодовых проектах, которые фактически зарабатывают вам деньги и решают проблемы для людей?
Затем станьте питоном независимым разработчиком! Это лучший способ приближения к задаче улучшения ваших навыков Python – даже если вы являетесь полным новичком.
Присоединяйтесь к моему бесплатным вебинаре «Как создать свой навык высокого дохода Python» и посмотреть, как я вырос на моем кодированном бизнесе в Интернете и как вы можете, слишком от комфорта вашего собственного дома.
Присоединяйтесь к свободному вебинару сейчас!
Работая в качестве исследователя в распределенных системах, доктор Кристиан Майер нашел свою любовь к учению студентов компьютерных наук.
Чтобы помочь студентам достичь более высоких уровней успеха Python, он основал сайт программирования образования Finxter.com Отказ Он автор популярной книги программирования Python одноклассники (Nostarch 2020), Coauthor of Кофе-брейк Python Серия самооставленных книг, энтузиаста компьютерных наук, Фрилансера и владелец одного из лучших 10 крупнейших Питон блоги по всему миру.
Его страсти пишут, чтение и кодирование. Но его величайшая страсть состоит в том, чтобы служить стремлению кодер через Finxter и помогать им повысить свои навыки. Вы можете присоединиться к его бесплатной академии электронной почты здесь.
Оригинал: “https://blog.finxter.com/python-locals/”