Новые списки

Что нужно сделать Даны три списка: Напишите код, который создаёт три новых списка. Вот их содержимое: Что оценивается

Класс-декоратор

Контекст Вы работаете в компании, которая разрабатывает программное обеспечение для финансовых анализов. Одна из ключевых задач в вашей работе — реализация сложного алгоритма для прогнозирования финансовых показателей. Этот алгоритм требует множества вычислений и может занимать длительное время. Вам поставлена задача создать декоратор, который будет логировать аргументы, результаты и время выполнения этой функции. Это поможет отслеживать прогресс выполнения алгоритма и анализировать его производительность. Задача Пример: … Читать далее

Синглтон

Что нужно сделать Синглтон — это порождающий паттерн проектирования, который гарантирует, что у класса есть только один экземпляр, и предоставляет к нему глобальную точку доступа. Синглтонами мы уже пользовались, к ним относятся, например, None, True и False. Именно потому, что None является синглтоном, мы можем использовать оператор is — он возвращает True только для объектов, представляющих одну и ту же сущность. Реализуйте декоратор singleton, который превращает класс в одноэлементный. То есть при множественной инициализации объекта этого класса будет сохранён только первый … Читать далее

Весь мир — декоратор…

Что нужно сделать Реализуйте декоратор для декораторов: он должен декорировать другую функцию, которая должна быть декоратором, и даёт возможность любому декоратору принимать произвольные аргументы. Пример использования: Результат: Что оценивается

Логирование в формате

Что нужно сделать Реализуйте декоратор, который будет логировать все методы декорируемого класса (кроме магических методов) и в который можно передавать формат вывода даты и времени логирования. Пример кода, передаётся формат «Месяц День Год — Часы Минуты Секунды»: Результат: Совет: внимательно пересмотрите видео 29.4, если сталкиваетесь с трудностями при решении этой задачи. Что оценивается

Функция обратного вызова

Что нужно сделать При работе с сетью и веб-сервисами иногда используется функция callback, так называемая функция обратного вызова. Это функция, которая вызывается при срабатывании определённого события (переходе на страницу, получении сообщения или окончании обработки процессором). В неё можно передать функцию, чтобы она выполнилась после определённого события. Это используется, например, в HTTP-серверах в ответ на URL-запросы. Реализуйте такую функцию. Пример функции: Основной код: Ожидаемый результат: Подсказка: функция callback может быть вызвана … Читать далее

Права доступа

Что нужно сделать На вас возложили задачу по созданию и поддержке специализированного сайта-форума. Вы только начали выполнять задачу и сейчас остановились на реализации действий, которые могут совершать посетители форума. И конечно же, для разных пользователей прописаны разные возможности. Напишите декоратор check_permission, который проверяет, есть ли у пользователя доступ к вызываемой функции, и если нет, то выдаёт исключение PermissionError. Пример кода: Результат: Что оценивается

Кэширование запросов

Контекст Вы разрабатываете программу для кэширования запросов к внешнему API. Часто повторяющиеся запросы занимают много времени, поэтому вы решаете создать класс LRU Cache (Least Recently Used Cache), который будет хранить ограниченное количество запросов и автоматически удалять самые старые при достижении лимита. Это позволит значительно ускорить повторяющиеся запросы, так как данные будут браться из кэша, а не отправляться повторно. Задача Советы Не забывайте … Читать далее

Дата

Что нужно сделать Реализуйте класс Date, который должен: Оба метода должны получать на вход строку вида dd-mm-yyyy. При тестировании программы объект класса Date должен инициализироваться исключительно через метод конвертации, например: Неверный вариант: date = Date(10, 12, 2077) Пример основного кода: Результат: Что оценивается

Математический модуль

Что нужно сделать Ирина использует в своей программе очень много различных математических вычислений, связанных с фигурами. Например, нахождение их площадей или периметров. Поэтому, чтобы не захламлять код огромным количеством функций, она решила выделить для них отдельный класс, подключить как модуль и использовать по аналогии с модулем math. Реализуйте класс MyMath, состоящий как минимум из следующих методов (можете бонусом добавить и другие методы): Пример основного кода: Результат: … Читать далее