Сравните datetime.datetime с time.strptime

У меня есть следующий код:

nowtime = datetime.datetime.now()
newTime = time.strptime(myTimestring, '%Y-%m-%d %H:%M:%S')

if(newTime > nowTime):
  #do some stuff

Конечно, мое сравнение завершается с ошибкой TypeError, "не могу сравнить datetime.datetime с кортежем". Обратите внимание, что я использую более старую версию Python, в которой нет datetime.strptime(). Как я могу заставить это сравнение работать?

1 ответ

Решение

От datetime.datetime.strptime() документация:

Это эквивалентно datetime(*(time.strptime(date_string, format)[0:6])),

For older Python versions (eg 2.3 or 2.4), use just that:

import datetime
import time

datetime.datetime(*(time.strptime(myTimestring, '%Y-%m-%d %H:%M:%S')[:6]))

Демо-версия:

>>> import datetime
>>> import time
>>> myTimestring = '2013-01-01 12:42:23'
>>> datetime.datetime(*(time.strptime(myTimestring, '%Y-%m-%d %H:%M:%S')[:6]))
datetime.datetime(2013, 1, 1, 12, 42, 23)
Другие вопросы по тегам