Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

4 и 5 / Date

.py
Скачиваний:
32
Добавлен:
15.06.2021
Размер:
1.76 Кб
Скачать
from datetime import timedelta, date
import pickle

class Date:
    day = 0
    month = 0
    year = 0

    def set_day(self, day):
        try:
            if day in range(1, 31):
                self.day = day
            else:
                raise Exception("Неверное число, должно быть от 1 до 31")
        except Exception as e:
            print(e)

    def set_month(self, month):
        try:
            if month in range(1, 31):
                self.month = month
            else:
                raise Exception("Неверный месяц, должен быть от 1 до 12")
        except Exception as e:
            print(e)
    def __init__(self, d, m, y):
        self.set_day(d)
        self.set_month(m)
        self.year = y

    def __del__(self):
        print("Объект удален из памяти")

    def leap(self):
        if ((self.year % 4) == 0):
           print("Високосный")
        else:
            print("Невисокосный")

    def plus(self):
        d = timedelta(5)
        result = date(self.year, self.month, self.day) + d
        self.day = result.day
        self.month = result.month
        self.year = result.year
        print("Прибавив 5 дней мы получим: ", result)

    def display_info(self):
        print(self.__str__())

    def __str__(self):
        return "Дата, хранящаяся в объекте: {}".format(date(self.year, self.month, self.day))

    def save(self, FILENAME):
        try:
            f = open(FILENAME, "wb")
            pickle.dump(self, f)
        except IOError:
            print("Ошибка файла для записи")
Соседние файлы в папке 4 и 5