Xaip
@Xaip

Как инкрементировать дату в python?

Пользуюсь библиотекой datetime в питон. И мне необходимо в определенный день недели очистить некоторые файлы. Я решил эту проблему путем вычисления дельты и инкрементированием дня недели. Но такой способ не работает из-за того что не обновляется месяц и год. Подскажите как лучше всего составить таймер
def get_delta(self):
        c1 = datetime.datetime.today()
        now_time = datetime.date(c1.year, c1.month, c1.day)
        wipe = datetime.date(self.date_to_wipe[0],self.day_wipe,self.date_to_wipe[2])
        delta = wipe - now_time
        return delta
    def run(self):
        while 1:

            delta = self.get_delta()
            if delta.days <= 0:
                self.thread_lock.acquire(1)
                self.kill_dedicated_server()
                self.remove_files()
                self.open_dedicated_server()
                self.day_wipe += 7
                self.thread_lock.release()
            else:
                print(self.name_wipe + ' : '+ delta)
            time.sleep(self.sleep_time)
  • Вопрос задан
  • 272 просмотра
Пригласить эксперта
Ответы на вопрос 1
crazyzubr
@crazyzubr
Python backend-developer
Как инкрементировать дату в python?


Использовать timedelta
from datetime import datetime, timedelta

some_date = datetime(year=2018, month=10, day=30)
delta_some_date = some_date + timedelta(days=5)
print(delta_some_date)


Выведет:
2018-11-04 00:00:00
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы