Junior — Middle
104
Como é que a Python implementa o armazenamento de variáveis e a sua área de abrangência?
Empresas quando solicitadas
Yappy
Resposta da IA
sobes.tech IA
В Python переменные хранятся в пространствах имён (namespaces), которые представляют собой словари, сопоставляющие имена с объектами. Области видимости определяются правилами LEGB:
- Local (локальная) — имена внутри текущей функции или метода.
- Enclosing (вложенная) — имена во внешних, но не глобальных функциях (замыкания).
- Global (глобальная) — имена на уровне модуля.
- Built-in (встроенная) — имена встроенных функций и исключений.
При обращении к переменной Python ищет её последовательно в этих областях. Локальные переменные хранятся в локальном пространстве имён функции, глобальные — в пространстве модуля.
Пример:
x = 10 # глобальная переменная
def func():
x = 5 # локальная переменная
print(x) # выведет 5
func()
print(x) # выведет 10
Для изменения глобальной переменной внутри функции используется ключевое слово global.