Python OOP Полиморфизм

kkgod

Новичок
Пользователь
Окт 7, 2020
21
1
3
Имею вот такое домашнее задание:

1. Создайть класс с именем train, содержащую поля:

название пункта назначения (важно),

номер поезда(важно),

время отправления(можно даж и datatime)(ПРИЧЕМ: датаВремя отправления поезда не может быть меньше текущей) (ВАЖНО).

Ввести данные в список из пяти элементов типа train, упорядочить элементы по номерам поездов (сортировка по номеру поезда).

Добавить возможность вывода информации о поезде, номер которого введен пользователем.

Добавить возможность сортировки массив по пункту назначения,

причем поезда с одинаковыми пунктами назначения должны быть упорядочены по времени отправления.


Нужна помощь с конкретными моментами, я не совсем понимаю как можно через datetime поставить условие, и вырезать конкретную дату и сравнить её, вот код:

Python:
import time
from datetime import date
class Train:
    def __init__(self, trip, number, timeto, a):
        self.trip  = trip
        self.number = number
        self.timeto = timeto
    #Trip - названия пункта назначения
    #Number - номер поезда
    #TimeTo - время отправления
    @property
    def trip(self):
        return self.__trip
    @property
    def number(self):
        return self.__number
    @property
    def timeto(self):
        return self.__timeto

    @trip.setter
    def trip(self, a):
        if len(a) in range(4, 20):  # if -1 < a < 101
            self.__trip = a
        else:
            self.__trip = 'Вы выбрали не то место назначения'
    @number.setter
    def number(self, a):
        try:
            self.__number = int(a)
        except:
            self.number = input('Попробуйте ещё раз: ')

    @timeto.setter
    def timeto(self, t ,a):
        current_date = date.today()
        try:
            self.__timeto = a
        except:
            self.timeto = input('Попробуйте ещё раз: ')
 

Форум IT Специалистов