Skip to content

lab_python_oop

ugapanyuk edited this page Sep 1, 2021 · 1 revision

Лабораторная работа №2

Объектно-ориентированные возможности языка Python.

Цель лабораторной работы: изучение объектно-ориентированных возможностей языка Python.

Требования к отчету:

Отчет по лабораторной работе должен содержать:

  1. титульный лист;
  2. описание задания;
  3. текст программы;
  4. экранные формы с примерами выполнения программы.

Задание:

  1. Необходимо создать виртуальное окружение и установить в него хотя бы один внешний пакет с использованием pip.

  2. Необходимо разработать программу, реализующую работу с классами. Программа должна быть разработана в виде консольного приложения на языке Python 3.

  3. Все файлы проекта (кроме основного файла main.py) должны располагаться в пакете lab_python_oop.

  4. Каждый из нижеперечисленных классов должен располагаться в отдельном файле пакета lab_python_oop.

  5. Абстрактный класс «Геометрическая фигура» содержит абстрактный метод для вычисления площади фигуры. Подробнее про абстрактные классы и методы Вы можете прочитать здесь.

  6. Класс «Цвет фигуры» содержит свойство для описания цвета геометрической фигуры. Подробнее про описание свойств Вы можете прочитать здесь.

  7. Класс «Прямоугольник» наследуется от класса «Геометрическая фигура». Класс должен содержать конструктор по параметрам «ширина», «высота» и «цвет». В конструкторе создается объект класса «Цвет фигуры» для хранения цвета. Класс должен переопределять метод, вычисляющий площадь фигуры.

  8. Класс «Круг» создается аналогично классу «Прямоугольник», задается параметр «радиус». Для вычисления площади используется константа math.pi из модуля math.

  9. Класс «Квадрат» наследуется от класса «Прямоугольник». Класс должен содержать конструктор по длине стороны. Для классов «Прямоугольник», «Квадрат», «Круг»:

    • Определите метод "repr", который возвращает в виде строки основные параметры фигуры, ее цвет и площадь. Используйте метод format - https://pyformat.info/
    • Название фигуры («Прямоугольник», «Квадрат», «Круг») должно задаваться в виде поля данных класса и возвращаться методом класса.
  10. В корневом каталоге проекта создайте файл main.py для тестирования Ваших классов (используйте следующую конструкцию - https://docs.python.org/3/library/__main__.html). Создайте следующие объекты и выведите о них информацию в консоль (N - номер Вашего варианта по списку группы):

    • Прямоугольник синего цвета шириной N и высотой N.
    • Круг зеленого цвета радиусом N.
    • Квадрат красного цвета со стороной N.
    • Также вызовите один из методов внешнего пакета, установленного с использованием pip.

Clone this wiki locally