Форум программистов, компьютерный форум, киберфорум
Python: Решение задач
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
0 / 0 / 0
Регистрация: 04.11.2022
Сообщений: 15

Задача 3. Логирование в формате

04.11.2022, 10:45. Показов 3769. Ответов 0

Студворк — интернет-сервис помощи студентам
Задача 3. Логирование в формате
Что нужно сделать

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

Пример кода, передаётся формат «Месяц День Год - Часы Минуты Секунды»:

@log_methods("b d Y - H:M:S")
class A:
def test_sum_1(self) -> int:
print('test sum 1')
number = 100
result = 0
for _ in range(number + 1):
result += sum([i_num ** 2 for i_num in range(10000)])

return result

@log_methods("b d Y - H:M:S")
class B(A):
def test_sum_1(self):
super().test_sum_1()
print("Наследник test sum 1")

def test_sum_2(self):
print("test sum 2")
number = 200
result = 0
for _ in range(number + 1):
result += sum([i_num ** 2 for i_num in range(10000)])

return result

my_obj = B()
my_obj.test_sum_1()
my_obj.test_sum_2()


Результат:

Запускается 'B.test_sum_1'. Дата и время запуска: Apr 23 2021 - 21:50:37
Запускается 'A.test_sum_1'. Дата и время запуска: Apr 23 2021 - 21:50:37
Тут метод test_sum_1

Завершение 'A.test_sum_1', время работы = 0.187s
Тут метод test_sum_1 у наследника

Завершение 'B.test_sum_1', время работы = 0.187s
Запускается 'B.test_sum_2'. Дата и время запуска: Apr 23 2021 - 21:50:37
Тут метод test_sum_2 у наследника

Завершение 'B.test_sum_2', время работы = 0.370s
Совет: внимательно пересмотрите видео 29.4, если сталкиваетесь с трудностями при решении этой задачи.



Что оценивается

Результат вычислений корректен.
Модели реализованы в стиле ООП, основной функционал описан в методах классов и в отдельных функциях.
При написании классов соблюдаются основные принципы ООП: инкапсуляция, наследование и полиморфизм.
Для получения и установки значений у приватных атрибутов используются сеттеры и геттеры с соответствующими декораторами.
Для создания нового класса на основе уже существующего используется наследование.
Для статических и классовых методов используется декоратор classmethod.
Формат вывода соответствует примеру.
Переменные, функции и собственные методы классов имеют значащие имена, не a, b, c, d.
Классы и методы/функции имеют прописанную документацию.
Есть аннотация типов для методов/функций и их аргументов (кроме args и kwargs). Если функция/метод ничего не возвращают, то используется None.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.11.2022, 10:45
Ответы с готовыми решениями:

Задача в экспоненциальном формате
Здравствуйте, начал изучать Objective-C, создал проект с помощью утилиты командной строки и не знаю как применить операцию левого сдвига,...

Задача передачи видео в формате ASF по сети.
Стоит задача передачи видео в формате ASF по сети,... (частями), Вопросы кто нибудь знает с чего начать... я уже начал скачав...

Задача: скачать гугл-таблицу в формате csv на Java
Собственно, то, что мне нужно сделать, описано в заглавии. Есть урл, ведущий на гугл таблицу. Нужно получить CSV-файл у себя в...

0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.11.2022, 10:45
Помогаю со студенческими работами здесь

Задача на струтуру. В выходной файл выведите время, оставшееся от t1 до t2 в формате hh:mm:ss
Дано время t1 и время t2. Гарантируется, что t1 и t2 -время одного дня, а также что t1<t2. Определить, сколько времени пройдет от t1 до...

Задача на функции. Имея текущую дату в формате г.м.д сделать функиции
Имеем дату, представленную в виде трёх целых чисел: год, месяц, день. Сделать функции, которые возвращают для обычного и високосного...

Задача с использованием метода String.Format: Посчитать итоговую сумму и вывести ее в денежном формате
Сделать с использованием метода String.Format. Задан размер вклада в банке, процентная ставка и количество лет, на которое был произведен...

Игра из интернета скачивается в формате мр3. Как скачать в другом формате?
Как скачать игру из интернета в другом формате.А то скачивается почему-то в MP-3!

Запрос у пользователя даты в кратком формате и ее вывод в полном формате
Нужна программа запрашивающую у пользователя дату в кратком формате дд.мм.гг (например: 15.10.2005), и отображающую эту дату в полном...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
Новые блоги и статьи
Переходник USB-CAN-GPIO
Eddy_Em 20.03.2026
Достаточно давно на работе возникла необходимость в переходнике CAN-USB с гальваноразвязкой, оный и был разработан. Однако, все меня терзала совесть, что аж 48-ногий МК используется так тупо: просто. . .
Оттенки серого
Argus19 18.03.2026
Оттенки серого Нашёл в интернете 3 прекрасных модуля: Модуль класса открытия диалога открытия/ сохранения файла на Win32 API; Модуль класса быстрого перекодирования цветного изображения в оттенки. . .
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-rectangles-sdl3-c. zip finish-rectangles-sdl3-cpp. zip
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие. Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора ВВЕДЕНИЕ Выполняя задание на управление насосной группой заполнения резервуара,. . .
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru