Усечение времени до timedelta - PullRequest
0 голосов
/ 16 апреля 2020

Я создаю калькулятор дат и хочу просто показать дни, а не время.

Это мой код:

        daystoAdd = 2
        date_today = date.today()
        result = date_today + timedelta(days=daystoAdd)
        print('result')

И это вывод:

Sat, 18 Apr 2020 00:00:00 GMT 

Спасибо

Ответы [ 2 ]

0 голосов
/ 16 апреля 2020

, если ожидаемый вывод - просто строка, вы можете использовать strftime

Ссылка: https://docs.python.org/3/library/datetime.html#datetime .date.strftime

daystoAdd = 2
date_today = date.today()
result = date_today + timedelta(days=daystoAdd)
formatted_time = result.strftime('%a, %d %m %Y')
print(formatted_time)

Вывод:

Sat, 18 04 2020

Вы можете использовать это для ссылки на параметр форматирования: https://strftime.org/

0 голосов
/ 16 апреля 2020

datetime.date имеет метод .strftime, который возвращает str в соответствии с форматом str, который вы предоставляете. Пример:

from datetime import date
from datetime import timedelta
daystoAdd = 2
date_today = date.today()
result = date_today + timedelta(days=daystoAdd)
print(result.strftime('%Y-%m-%d'))

Вывод:

2020-04-18

документы , охватывающие .strftime коды методов. Обратите внимание, что для даты использование единицы меньше, чем день, приведет к нулям, например, %M (минуты) приведет к 00 и т. Д.

...