Курс Python → Область видимости переменных
Когда вы работаете с переменными в Python, важно понимать, что область видимости переменной определяет доступность этой переменной в различных частях кода. Если переменная не была инициализирована в текущей области видимости, Python будет искать ее во внешних областях.
В случае, когда переменная была присвоена значение внутри функции, она становится локальной для этой функции. Это означает, что переменная будет доступна только внутри этой функции и не будет видна за ее пределами. Если попытаться обратиться к этой переменной вне функции, Python выдаст ошибку о неопределенной переменной.
def another_func():
a = 10
print(a)
another_func()
print(a) # Ошибка: имя 'a' не определено
В приведенном выше примере переменная ‘a’ была инициализирована внутри функции ‘another_func’, что делает ее локальной для этой функции. При попытке обратиться к переменной ‘a’ за пределами функции, Python не сможет найти эту переменную в глобальной области видимости и выдаст ошибку.
Чтобы избежать ошибок с переменными вне области видимости, необходимо либо объявить переменную глобальной с помощью ключевого слова ‘global’, либо вернуть значение переменной из функции и присвоить его другой переменной в глобальной области видимости.
Другие уроки курса "Python"
- Изменение логики работы с временем
- Установка и использование emoji
- Создание коллекций из выражения-генератора
- Функция enumerate() в Python
- Сортировка с помощью параметра key
- Работа с файлами в Python
- Оператор объединения словарей
- Установка и использование Python-dateutil
- Обработка исключений в Python 3
- Различия символов в Python
- Оператор «or» в Python
- Подчеркивание в REPL
- Обязательные аргументы в Python
- Анализ кода — Python
- Генераторы в Python
- Экспорт функций в Python
- Создание OrderedDict
- Применение функции к элементам списка
- Управление контекстом с помощью декоратора contextmanager
- Атрибуты массивов в Numpy
- Открытие, чтение и закрытие файла
- Копирование файлов с shutil()
- Проверка типов с использованием isinstance
- Приближение чисел в Python
- Управление импортом в Python
- Декораторы в Python
- Управление контекстом выполнения кода
- Особенности ключей словаря в Python
- Лимиты на ресурсы Python
- Основные функции и модули Python
- Ускорение кода с помощью векторизации
- Beautiful Soup — извлечение данных из HTML
- Многопоточность и асинхронное программирование в Python
- Считывание бинарного файла в Python
- Оператор «is not» в Python
- Получение ID текущего процесса
- Декоратор @override
- Создание функций с произвольным количеством аргументов
- Установка пакетов с помощью pip
- Сортировка данных с лямбда-функциями
- Обработка ошибок в JSON данных
- Получение локальных переменных в Python
- Преобразование данных в Python
- Функция reduce() из модуля functools
- Функция findall() для поиска вхождений строки















