Самый простой способ объединить строки даты и времени в один объект datetime, используя Python - PullRequest
8 голосов
/ 06 марта 2012

У меня есть веб-форма, в которой есть 2 поля ввода: «StartDate» и «StartTime».Я конвертирую строку поля StartDate в объект Python datetime, без проблем.Поле StartTime передается в виде строки в форме "0130" в течение 1:30.Каков наилучший способ преобразовать строку StartTime и объединить ее с объектом StartDate datetime, чтобы оба они сохранялись как один datetime?Любые подсказки были бы великолепны!

Ответы [ 4 ]

28 голосов
/ 06 марта 2012

Использование datetime.combine :

import datetime as dt
mytime = dt.datetime.strptime('0130','%H%M').time()
mydatetime = dt.datetime.combine(dt.date.today(), mytime)
0 голосов
/ 04 июня 2016
import datetime
def time_tango(date, time):
    return datetime.datetime.combine(date, time)
0 голосов
/ 06 марта 2012

Просто короткая версия:

from datetime import datetime
print datetime.combine(datetime.strptime("5 Mar 12", "%d %b %y") ,datetime.strptime("0130","%H%M").time())

выход

2012-03-05 01:30:00
0 голосов
/ 06 марта 2012

Если вы можете загрузить время в datetime.time, вы можете использовать следующий код

import datetime

dt = datetime.datetime(2012, 2, 12)
tm = datetime.time(1, 30)

combined = dt.combine(dt, tm)

print(combined)

Выход

2012-02-12 01:30:00
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...