Курс Python → Изменение переменной в Python: nonlocal
Для изменения переменной внешней области видимости в Python можно использовать ключевое слово nonlocal. Это позволяет ссылаться на переменные, определенные в ближайшей внешней области видимости, исключая глобальную. Таким образом, можно изменять переменные, которые находятся в области видимости функции, вложенной в другую функцию.
Например, рассмотрим следующий код:
def outer_func():
a = 10
def inner_func():
nonlocal a
a = 20
inner_func()
print(a)
outer_func()
В данном примере функция inner_func изменяет значение переменной a, которая находится в области видимости функции outer_func. После вызова inner_func значение переменной a становится равным 20, и при выводе на экран получаем именно это значение.
Ключевые слова global и nonlocal сообщают интерпретатору Python о том, что необходимо использовать переменные из соответствующих внешних областей видимости, а не создавать новые переменные с такими же именами.
Использование nonlocal может быть полезно при работе с вложенными функциями, когда требуется изменить значение переменной из внешней области видимости. Это помогает более гибко управлять переменными и избежать создания лишних переменных внутри функций.
Другие уроки курса "Python"
- Работа с дробями в Python
- Поиск файлов по шаблону
- Группировка элементов Python
- Преобразование списка в словарь через генератор
- Метод matmul для умножения матриц
- Defaultdict в Python
- List Comprehension Tutorial
- Enum в Python
- Работа с контекстными менеджерами
- Создание новых списков через list comprehensions
- Метод сравнения объектов в Python
- Измерение времени выполнения кода с помощью time
- Вывод с переменной через запятую
- Итераторы в Python
- Виртуальные среды в Python
- Множественное назначение в Python
- Разбиение текста в Python
- Шаблоны Flask: условия и циклы
- Создание итерируемых объектов
- Основы работы с os
- Модуль pprint
- Управление контекстом с помощью декоратора contextmanager
- Профилирование данных с Pandas
- Автоматизация скриптов на AWS Lightsail.
- Тестирование с responses
- Измерение потребления памяти при сортировке
- Многострочные комментарии в Python
- Операции с числами в Python
- Модуль math: основные функции
- Создание директории в Python
- Измерение времени выполнения кода
- Декораторы в Python
- Функция zip() для объединения списков
- Идентификатор объекта в Python
- Метод gt в Python
- Избегайте пустого списка
- Уникальные значения из списка
- Генераторы данных
- Вызов функций по строке в Python.
- Управление экспортом элементов
- Измерение времени выполнения кода в Python
- Замена символов в Python
- Генерация чисел с range()
- Получение имени функции с помощью inspect
- Присоединение элементов коллекции
- Замыкания в Python
- Python enumerate() использование















