21 / 22
Что такое closures и LEGB rule, и почему `lambda` в цикле часто ловит «late binding» баг?
LEGB — порядок поиска имени: Local → Enclosing → Global → Builtin. Closure — это вложенная функция, удерживающая ссылку на переменную из enclosing scope. Python захватывает переменную, а не значение на момент определения, поэтому lambda i: ... внутри for i in range(...) все увидят финальное значение i. Чинится через дефолтный аргумент lambda i=i: или functools.partial.