• B правой части каждого сообщения есть стрелки и . Не стесняйтесь оценивать ответы. Чтобы автору вопроса закрыть свой тикет, надо выбрать лучший ответ. Просто нажмите значок в правой части сообщения.

  • 🔥 Бесплатный курс от Академии Кодебай: «Анализ защищенности веб-приложений»

    🛡 Научитесь находить и использовать уязвимости веб-приложений.
    🧠 Изучите SQLi, XSS, CSRF, IDOR и другие типовые атаки на практике.
    🧪 Погрузитесь в реальные лаборатории и взломайте свой первый сайт!
    🚀 Подходит новичкам — никаких сложных предварительных знаний не требуется.

    Доступ открыт прямо сейчас Записаться бесплатно

Помогите решить задачу (Задача 1. Работа с файлом 2)

04.09.2022
5
0
Что нужно сделать

Реализуйте модернизированную версию контекст-менеджера File:

  • теперь при попытке открыть несуществующий файл менеджер автоматически создаёт и открывает этот файл в режиме записи;
  • на выходе из менеджера подавляются все исключения, связанные с файлами.


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

  • Результат вычислений корректен.
  • Модели реализованы в стиле ООП, основной функционал описан в методах классов и в отдельных функциях.
  • При написании классов соблюдаются основные принципы ООП: инкапсуляция, наследование и полиморфизм.
    • Для получения и установки значений у приватных атрибутов используются сеттеры и геттеры с соответствующими декораторами.
    • Для создания нового класса на основе уже существующего используется наследование.
    • Для статических и классовых методов используется декоратор classmethod.
  • Сообщения о процессе получения результата осмысленны и понятны для пользователя.
  • Переменные, функции и собственные методы классов имеют значащие имена, не a, b, c, d.
  • Классы и методы/функции имеют прописанную документацию.
  • Есть аннотация типов для методов/функций и их аргументов (кроме args и kwargs). Если функция/метод ничего не возвращают, то используется None.
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab