Словарь › nonlocal
Ключевые словаnonlocal
Похоже на global, но работает для вложенных функций: говорит Python взять переменную из ближайшей внешней функции (не глобальной). Нужно, когда функция внутри функции хочет изменить переменную «родителя».
Пример · python
← Весь словарь
def make_counter():
count = 0
def increment():
nonlocal count # берём count из make_counter
count += 1
return count
return increment
next_val = make_counter()
print(next_val()) # 1
print(next_val()) # 2