Skip to content

Latest commit

 

History

History
92 lines (74 loc) · 4.84 KB

File metadata and controls

92 lines (74 loc) · 4.84 KB

Модуль расчета и отображения полной информации о тренировках по данным от блока датчиков.

python, ООП

Программный модуль по методологии ООП для расчета и отображения информации о прошедшей тренировке по данным от блока датчиков.

Базовый класс

class Training

Свойства класса

  • action - основное считываемое действие во время тренировке (шаг - бег, ходьба; гребок - плавание);
  • duration - длительность тренировки;
  • weight - вес спортсмена;
  • M_IN_KM = 1000 - константа для перевода значений из метров в километры.
  • LEN_STEP - расстояние, которое спортсмен преодолевает за один шаг или гребок. Один шаг — это 0.65 метра, один гребок при плавании — 1.38 метра.

Методы класса

  • get_distance() - метод возвращает значение дистанции преодолённой за тренировку
  • get_mean_speed() - метод возвращает значение средней скорости движения во время тренировки
  • get_spent_calories() - метод возвращает число потраченных колорий
  • show_training_info() - метод возвращает объект класса сообщения

Классы наследники

Класс беговой тренировки

class Running

Свойства класса

наследуются

Методы класса

  • get_spent_calories() - (переопределен) метод возвращает число потраченных калорий


Класс спортивной ходьбы

class SportsWalking

Свойства класса

Наследуемые плюс добавляемое свойство:

  • height - рост

Методы класса

  • get_spent_calories() - (переопределен) метод возвращает число потраченных калорий

Класс тренировки в бассейне

class Swimming

Свойства класса

Наследуемые плюс добавляемые свойства:

  • length_pool - длина бассейна
  • count_pool - количество проплытых бассейнов

Методы класса

  • get_mean_speed() - (переопределен) метод возвращает значение средней скорости движения во время тренировки
  • get_spent_calories() - (переопределен) метод возвращает число потраченных калорий

Класс информационного сообщения

class InfoMessage

Свойства класса

  • training_type - тип тренировки
  • duration - длительность тренировки
  • distance -дистанция преодолённая за тренировку
  • speed - средняя скорость движения во время движения
  • calories - потраченные за время тренировки килокалории

Методы класса

  • get_message() - метод выводит возвращает строку сообщения:
'Тип тренировки: {training_type}; Длительность: {duration} ч.; Дистанция: {distance} км; Ср. скорость: {speed} км/ч; Потрачено ккал: {calories}'.

Функции модуля

read_package()

  • Функция read_package() принимает на вход код тренировки и список её параметров.
  • Функция определяет тип тренировки и создать объект соответствующего класса, передав ему на вход параметры, полученные во втором аргументе.

main(training)

Функция main() принимает на вход экземпляр класса Training.

  • При выполнении функции main()для этого экземпляра вызывается метод show_training_info(); результатом выполнения - объект класса InfoMessage.
  • Для объекта InfoMessage, вызывается метод, который возвращает строку сообщения с данными о тренировке.