2015-01-13 11 views
3

Мне нужно преобразовать строку даты «2014-12-17 08: 00: 00.23» в строку «08:00:00» в python. Я смотрел на datetime.strptime, но до сих пор не могу найти способ для этого. например:Преобразование времени Python в другой формат

2014-12-17 08: 00: 00,23 до 08:00:00

, что будет шаблон для приведенного выше формата времени.

ответ

3

Сначала проанализируйте его с помощью strptime, а затем отформатируйте объект datetime с помощью strftime.

Docs

import datetime 
t = '2014-12-17 08:00:00.23' 
dt = datetime.datetime.strptime(t, '%Y-%m-%d %H:%M:%S.%f') 
print dt.strftime('%H:%M:%S') 
=> 08:00:00 
+0

, поскольку он содержит много файла внутри текстового файла, поэтому мне нужно выяснить шаблон. cn вы поможете мне получить шаблон. –

+0

Является ли шаблон в моем ответе недействительным для вас? – shx2

0

Если ваше время строка имеет фиксированную ширину, вы можете просто получить подстроку из исходной строки времени:

In [90]: ts = '2014-12-17 08:00:00.23' 

In [91]: ts[-11:-3] 
Out[91]: '08:00:00' 

Если вы хотите, чтобы получить объект DATETIME , используйте datetime или dateutil вместо этого:

In [99]: from dateutil import parser 
    ...: dt = parser.parse(ts) 
    ...: dt.strftime("%H:%M:%S") 
Out[99]: '08:00:00' 
+0

, поскольку он содержит много файлов внутри текстового файла, поэтому мне нужно выяснить шаблон. cn вы поможете мне получить шаблон. –

Смежные вопросы