Курс Python → Область видимости переменных
Область видимости переменной в Python определяет, где переменная может быть доступна в вашем коде. В Python есть три уровня области видимости: глобальная, локальная и нелокальная. Глобальная область видимости означает, что переменная доступна в любом месте вашего кода. Локальная область видимости означает, что переменная доступна только внутри определенной функции или метода. Нелокальная область видимости означает, что переменная доступна внутри вложенной функции, но не является локальной для этой функции.
Пример глобальной области видимости:
x = 10
def my_function():
print(x)
my_function() # Вывод: 10
Пример локальной области видимости:
def my_function():
y = 20
print(y)
my_function() # Вывод: 20
print(y) # Ошибка: NameError: name 'y' is not defined
Пример нелокальной области видимости:
def outer_function():
z = 30
def inner_function():
print(z)
inner_function()
outer_function() # Вывод: 30
Использование правильной области видимости переменных поможет вам избежать ошибок и сделает ваш код более читаемым и поддерживаемым. Помните, что в Python переменные внутри функций являются локальными по умолчанию, если не указано иное. Также учитывайте, что изменение глобальной переменной внутри функции требует использования ключевого слова global.
Другие уроки курса "Python"
- Работа с пользовательским вводом
- Импорт модулей и пакетов в Python
- Изменение списка срезами
- Декораторы в Python
- Преобразование в float
- Лямбда-функции в Python
- Измерение времени выполнения с помощью time
- Работа с модулем cmath
- Блок else в циклах Python
- Форматирование строк с % в Python
- Изменение логики работы с временем
- Обмен данными с asyncio.Queue
- Сравнение def и lambda в Python
- Преобразование range в итератор
- Модуль antigravity: генерация координат
- Переопределение метода __and__
- Ограничение итераций в Python
- Метод hash в Python
- Использование метода lower()
- Хеши в Python
- Удаление эмодзи с помощью pandas
- Работа с NumPy
- Работа со слайсами
- Протокол управления контекстом
- Создание GUI с Tkinter: Entry
- Работа с f-строками 2.0
- Участие в сообществе @selectel
- Импорт модулей в Python 3.12
- Методы classmethod и staticmethod
- Оператор «or» в Python
- Оператор * в Python
- Оператор @ для умножения матриц
- Константы в модуле cmath
- Работа с defaultdictами в Python
- Цикл while в Python
- Оператор += для объединения строк
- Проекты на Python
- Операции с датами в Python
- Работа с очередями в Python
- Печать месячного календаря
- Работа с файлами и директориями в Python.
- Копирование объектов в Python
- Импорт объектов из модулей
- Изменение переменной в Python: nonlocal
- Условные выражения в Python
- Генераторные функции в Python
- Удаление элементов из списка
- Запуск асинхронной корутины















