Оригинал статьи опубликован на YourQuorum

Идея расширения определяет, как факторы и имена рассматриваются в вашем коде. Он определяет воспринимаемость переменной внутри кода. Размер имени или переменной зависит от места в вашем коде, где вы создаете эту переменную. Идея области действия Python по большей части представлена ​​с использованием стандарта, известного как правило LEGB.

Буквы в аббревиатуре LEGB обозначают Nearby, Encasing, Worldwide и Worked в областях. Это суммирует уровни области действия Python, а также последовательность шагов, которым следует Python при установке имен в программе.

В этом учебном упражнении вы узнаете:

Что такое расширения и как они работают в Python

  • Почему важно знать область видимости Python
  • Что такое правило LEGB и как Python использует его для определения имен
  • Пошаговые инструкции по изменению стандартного поведения области Python с использованием глобального и нелокального
  • Какие устройства, связанные с областью действия, предлагает Python и как вы можете их использовать
  • Имея эту информацию в пределах досягаемости, вы можете использовать расширения Python для создания более надежных и жизнеспособных проектов. Использование степени Python поможет вам избежать или ограничить ошибки, связанные с крахом имени, а также с ужасным использованием мировых имен в ваших проектах.

Вы извлечете пользу из этого учебного упражнения, если знаете все об основных идеях Python, таких как классы, возможности, внутренние возможности, факторы, особые случаи, понимания, рабочие возможности и стандартные информационные структуры.

Определение степени

В программировании экстент имени характеризует область программы, в которой вы можете однозначно получить это имя, например факторы, возможности, объекты и т. д. Имя может быть заметным для кода и открываться им в его степени. Несколько диалектов программирования используют возможности для того, чтобы избежать влияния имен и неустойчивых способов поведения. Чаще всего вы узнаете две основные степени:

Всемирная степень: имена, которые вы характеризуете в этом расширении, доступны для всего вашего кода.

Ближайшая степень: Имена, которые вы характеризуете в этом расширении, просто доступны или заметны для кода внутри степени.

Scope появился на том основании, что ранние диалекты программирования (например, Fundamental) просто имели всемирные названия. С таким названием любая часть программы может изменить любой фактор на ровном месте, поэтому отслеживание и устранение неполадок в огромных проектах может превратиться в настоящий дурной сон. Чтобы работать с глобальными именами, вам придется одновременно помнить весь код, чтобы понять, какова ценность данного имени в любое время. Это был важный симптом отсутствия ученых степеней.

Некоторые диалекты, такие как Python, используют расширение, чтобы избежать подобных проблем. В тот момент, когда вы используете язык, который выполняет область действия, вам практически невозможно добраться до каждого из факторов программы во всех областях этой программы. В этой ситуации ваша способность добраться до данного имени будет зависеть от того, где вы охарактеризовали это имя.

Имена в ваших проектах будут иметь размер блока кода, в котором вы их характеризуете. В тот момент, когда вы сможете добраться до значения данного имени откуда-то из своего кода, вы скажете, что имя находится в области видимости. Если вы не можете добраться до имени, вы скажете, что имя не соответствует расширению.

Имена и расширения в Python

Поскольку Python — это мощный язык компоновки, факторы в Python появляются, когда вы сначала распределяете их по достоинству. С другой стороны, работы и классы доступны после того, как вы характеризуете их с помощью def или class по отдельности. В конце концов, модули существуют после того, как вы их импортируете. В качестве синопсиса вы можете сделать имена Python с помощью одной из сопутствующих задач:

Python использует область имени задачи или определения, чтобы связать его с определенным расширением. В общем, то, где вы раздаете или характеризуете имя в своем коде, определяет степень или воспринимаемость этого имени.

Например, если вы передаете ценность имени внутри возможности, это имя будет иметь ближайшую область действия Python. И наоборот, если вы присваиваете имени значение, выходящее за рамки всех возможностей — скажем, на высоком уровне модуля — тогда в этот момент это имя будет иметь глобальную область действия Python.

Расширение Python и пространство имен

В Python идея расширения тесно связана с идеей пространства имен. По мере того, как вы продвигались до этого момента, область действия Python определяет, где в вашей программе заметно имя. Расширения Python выполняются как ссылки на слова, которые направляют имена к объектам. Эти ссылки на слова обычно называют пространствами имен. Это существенные инструменты, которые Python использует для хранения имен. Они помещены в экстраординарную черту под названием .__dict__.

Имена на высоком уровне модуля помещаются в пространство имен модуля. Таким образом, они помещаются в трейт модуля .__dict__. Исследуйте сопровождающий код:

Использование правила LEGB для области действия Python

  • Python устанавливает имена, используя предполагаемое правило LEGB, которое названо в честь области Python для имен. Буквы в LEGB означают «рядом», «окаймление», «по всему миру» и «работа в». Вот краткий обзор того, что означают эти термины:
  • Степень соседства (или возможности) — это блок кода или тело любой возможности Python или лямбда-артикуляции. Эта область Python содержит имена, которые вы характеризуете внутри возможности. Эти имена могут быть заметны из кода возможности. Это делается при вызове возможностей, а не при определении возможностей, поэтому у вас будет много разных степеней в качестве вызовов возможностей. Это справедливо независимо от того, вызываете ли вы аналогичную возможность многократно или рекурсивно. Каждый звонок приведет к тому, что будет сделана еще одна степень соседства.
  • Охватывающая (или нелокальная) степень — это уникальное расширение, которое в основном существует для установленных возможностей. В случае, если соседнее расширение является внутренней или установленной возможностью, степень охвата является степенью внешней или заключающей способности. Эта степень содержит имена, которые вы характеризуете в возможности включения. Имена в охватывающей степени очевидны из кода внутренней и охватывающей возможностей.
  • Всемирная (или модульная) степень — это самое важное расширение в программе, контенте или модуле Python. Эта область Python содержит все имена, которые вы характеризуете на высоком уровне программы или модуля. Имена в этой степени Python очевидны из любого места в вашем коде.
  • Неотъемлемая степень — это исключительное расширение Python, которое создается или складывается в любой момент, когда вы запускаете контент или открываете интеллектуальное собрание. Это расширение содержит такие имена, как крылатые фразы, возможности, исключения и различные качества, которые включены в Python. Имена в этой степени Python также доступны из любого места в вашем коде. Следовательно, Python складывает его, когда вы запускаете программу или контент.

Часто задаваемые вопросы

Что такое набор правил в Python?

Структура предложений языка программирования Python представляет собой набор решений, который характеризует то, как программа Python будет составлена ​​и расшифрована (как средой выполнения, так и пользователями-людьми).

Какой набор правил Python называется PEP8?

PEP 8, иногда пишется как PEP8 или Energy 8, представляет собой отчет, в котором приводятся правила и рекомендации по наиболее эффективному методу написания кода Python. Он был написан в 2001 году Гвидо ван Россумом, Барри Варшавой и Скретчем Когланом. Важным фокусом Kick 8 является работа над согласованностью и согласованностью кода Python.

Как называется набор правил программирования?

Стиль программирования, иначе называемый стилем кода, представляет собой набор правил или правил, используемых при составлении исходного кода программы для ПК. В большинстве случаев гарантируется, что следование определенному стилю программирования поможет разработчикам читать и понимать исходный код, приспосабливаясь к стилю, и помогает не допускать ошибок.