Создайте функцию-замыкание, которая запрашивает два целых числа:
- от 1 до 100 для загадывания,
- от 1 до 10 для количества попыток
Функция возвращает функцию, которая через консоль просит угадать загаданное число за указанное число попыток.
Дорабатываем задачу 1. Превратите внешнюю функцию в декоратор. Он должен проверять входят ли переданные в функцию-угадайку числа в диапазоны [1, 100] и [1, 10]. Если не входят, вызывать функцию со случайными числами из диапазонов.
Напишите декоратор, который сохраняет в json файл параметры декорируемой функции и результат, который она возвращает. При повторном вызове файл должен расширяться, а не перезаписываться.
- Каждый ключевой параметр сохраните как отдельный ключ json словаря.
- Для декорирования напишите функцию, которая может принимать как позиционные, так и ключевые аргументы.
- Имя файла должно совпадать с именем декорируемой функции.
Создайте декоратор с параметром. Параметр - целое число, количество запусков декорируемой функции.
Объедините функции из прошлых задач. Функцию угадайку задекорируйте декораторами для сохранения параметров, декоратором контроля значений и декоратором для многократного запуска. Выберите верный порядок декораторов.
Объедините студентов в команды по 2-5 человек в сессионных залах. Доработайте прошлую задачу добавив декоратор wraps в каждый из декораторов.