📦 Репозиторий занятия 62

Урок 62. Вложенные функции. Замыкание

Как работать с репозиторием

Идите по карточкам сверху вниз: сначала сформулируйте ожидаемый результат, затем откройте полный файл, проверьте предположение и ответьте на вопрос для самопроверки. Фрагменты не обрезаются.

Маршрут изучения

  1. Предскажите: прочитайте роль файла и сформулируйте ожидаемый результат.
  2. Исследуйте: откройте исходник и найдите перечисленные ключевые понятия.
  3. Измените: поменяйте одно условие или значение и объясните новый результат.
  4. Проверьте: ответьте на вопрос карточки без копирования кода.

Файлы: рекомендуемый порядок

1
MarkdownРазбор концепции

less_32__closure_decorator/theory_01__scope.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: Области видимости в Python (LEGB); Простой пример LEGB; Вывод:

Ключевые понятия: функции
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
2
MarkdownРазбор концепции

less_32__closure_decorator/theory_02__Enclosing_scope.md

Сначала выделите правило и объясните своими словами, затем проверьте каждый пример.

Разделы: Что такое `Enclosing` в Python?; Определение `enclosing scope`; Иерархия областей видимости в Python

Ключевые понятия: функции
Проверьте себя: Какое правило из файла вы сможете применить без подсказки?
Открыть полный файл →
3
PythonИсполняемый пример

less_32__closure_decorator/theory_03__closures_examples.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: 10; 15; Функция запускается в 1-й раз

Ключевые понятия: функции, циклы
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
4
PythonИсполняемый пример

less_32__closure_decorator/theory_04_what_is_decorator.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Предположим, у нас есть НЕСКОЛЬКО функций, до и после которых; надо вывести *************************************************; НЕДОСТАТОК:

Ключевые понятия: функции
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
5
PythonИсполняемый пример

less_32__closure_decorator/theory_05__simple_decorator.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Теперь функция decorator действительно - декоратор!; Поэтому для её вызова нужно добавить скобки:; **************************************************

Ключевые понятия: функции, импорт модулей, выборка и фильтрация
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
6
PythonИсполняемый пример

less_32__closure_decorator/theory_06_classic_decorators_form.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Однако декоратор в Python имеет более удобное обозначение; **************************************************; Something useful...

Ключевые понятия: функции
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
7
PythonИсполняемый пример

less_32__closure_decorator/theory_07_what_returns_our_decorator.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Однако декоратор в Python имеет более удобное обозначение; **************************************************; Something useful...

Ключевые понятия: функции
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
8
PythonИсполняемый пример

less_32__closure_decorator/theory_08_args_kwargs.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Однако декоратор в Python имеет более удобное обозначение; **************************************************; Something useful...

Ключевые понятия: функции
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
9
PythonИсполняемый пример

less_32__closure_decorator/theory_09_wraps.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Однако декоратор в Python имеет более удобное обозначение; **************************************************; Something useful...

Ключевые понятия: функции, импорт модулей, выборка и фильтрация
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
10
PythonИсполняемый пример

less_32__closure_decorator/theory_10_return.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: Однако декоратор в Python имеет более удобное обозначение; **************************************************; Something useful...

Ключевые понятия: функции, импорт модулей, выборка и фильтрация
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
11
PythonИсполняемый пример

less_32__closure_decorator/theory_11_lets_think!.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Объём: 18 строк. Читайте сверху вниз и отмечайте изменения состояния данных.

Ключевые понятия: функции
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
12
PythonИсполняемый пример

less_32__closure_decorator/theory_12_param_decorator.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Разделы: **************************************************; Something useful...; **************************************************

Ключевые понятия: функции, импорт модулей, выборка и фильтрация
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
13
PythonИсполняемый пример

less_32__closure_decorator/theory_13_logging.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Объём: 16 строк. Читайте сверху вниз и отмечайте изменения состояния данных.

Ключевые понятия: импорт модулей
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
14
PythonИсполняемый пример

less_32__closure_decorator/theory_14_lets_think!__logging_example.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Объём: 29 строк. Читайте сверху вниз и отмечайте изменения состояния данных.

Ключевые понятия: функции, импорт модулей, выборка и фильтрация
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
15
PythonИсполняемый пример

less_32__closure_decorator/theory_15_two_decorators.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Объём: 60 строк. Читайте сверху вниз и отмечайте изменения состояния данных.

Ключевые понятия: функции, импорт модулей, выборка и фильтрация
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →
16
PythonИсполняемый пример

less_32__closure_decorator/theory_16_class_decorations.py

Перед запуском предскажите результат, затем измените один параметр и сравните поведение.

Объём: 7 строк. Читайте сверху вниз и отмечайте изменения состояния данных.

Ключевые понятия: тема текущего занятия
Проверьте себя: Что программа выведет до запуска и какая строка отвечает за этот результат?
Открыть полный файл →