Str на время в python time1 = "2010-04-20 10:07:30" time2 = "2010-04-21 10:07:30" Как преобразовать вышеуказанное из строки в метку времени? Мне нужно вычесть указанные выше временные метки time2-time1. Ответ 1 Для Python 2.5 + from datetime import datetime format = '%Y-%m-%d %H:%M:%S' print datetime.strptime(time2, format) - datetime.strptime(time1, format) # 1 day, 0:00:00 Изменить: для Python 2.4 import time format = '%Y-%m-%d %H:%M:%S' print time.mktime(time.strptime(time2, format)) - time.mktime(time.strptime(time1, format)) # 86400.0 Ответ 2 Если вы застряли в системе Python 2.4, такой как я: from time import strptime from datetime import datetime str_to_datetime = lambda st: datetime(*strptime(st, '%Y-%m-%d %H:%M:%S')[:6]) str_to_datetime('2010-04-20 10:07:30') В противном случае datetime.strptime() будет работать нормально. Ответ 3 >>> t1 = datetime.strptime(time1, "%Y-%m-%d %H:%M:%S") >>> t2 = datetime.strptime(time2, "%Y-%m-%d %H:%M:%S") >>> t2-t1 datetime.timedelta(1) >>> (t2-t1).days 1 >>> (t2-t1).seconds 0 Ответ 4 import time time1 = "2010-04-20 10:07:30" time_tuple = time.strptime(time1, "%Y-%m-%d %H:%M:%S") timestamp = time.mktime(time_tuple)
Ответ 1 Для Python 2.5 + from datetime import datetime format = '%Y-%m-%d %H:%M:%S' print datetime.strptime(time2, format) - datetime.strptime(time1, format) # 1 day, 0:00:00 Изменить: для Python 2.4 import time format = '%Y-%m-%d %H:%M:%S' print time.mktime(time.strptime(time2, format)) - time.mktime(time.strptime(time1, format)) # 86400.0
Ответ 2 Если вы застряли в системе Python 2.4, такой как я: from time import strptime from datetime import datetime str_to_datetime = lambda st: datetime(*strptime(st, '%Y-%m-%d %H:%M:%S')[:6]) str_to_datetime('2010-04-20 10:07:30') В противном случае datetime.strptime() будет работать нормально.
Ответ 3 >>> t1 = datetime.strptime(time1, "%Y-%m-%d %H:%M:%S") >>> t2 = datetime.strptime(time2, "%Y-%m-%d %H:%M:%S") >>> t2-t1 datetime.timedelta(1) >>> (t2-t1).days 1 >>> (t2-t1).seconds 0
Ответ 4 import time time1 = "2010-04-20 10:07:30" time_tuple = time.strptime(time1, "%Y-%m-%d %H:%M:%S") timestamp = time.mktime(time_tuple)