Ответ 1
Используйте datetime.replace
:
from datetime import datetime
date = datetime.strptime('26 Sep 2012', '%d %b %Y')
newdate = date.replace(hour=11, minute=59)
Я успешно преобразовал что-то формата 26 Sep 2012
в 26-09-2012
, используя:
datetime.strptime(request.POST['sample_date'],'%d %b %Y')
Однако я не знаю, как установить час и минуту что-то вроде выше, до 11:59. Кто-нибудь знает, как это сделать?
Примечание. Это может быть будущая дата или любая случайная, а не только текущая дата.
Используйте datetime.replace
:
from datetime import datetime
date = datetime.strptime('26 Sep 2012', '%d %b %Y')
newdate = date.replace(hour=11, minute=59)
datetime.replace() будет лучшим вариантом, также он предоставляет возможность для замены дней, года и месяца.
Предположим, что мы имеем объекты и дату datetime, представленные как:
"2017-05-04"
>>> from datetime import datetime
>>> date = datetime.strptime('2017-05-04',"%Y-%m-%d")
>>> print(date)
2017-05-04 00:00:00
>>> date = date.replace(minute=59, hour=23, second=59, year=2018, month=6, day=01)
>>> print(date)
2018-06-01 23:59:59