Добавил:
Substandart
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз:
Предмет:
Файл:4 и 5 / Date
.pyfrom 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("Ошибка файла для записи")