Как преобразовать значение времени / p (am / pm) в Python в 24-часовой формат - PullRequest
0 голосов
/ 15 сентября 2018

Я читаю файл csv, который имеет поле времени как 3:50a и 4:25p. Мне нужно преобразовать это время в 24-часовой формат времени как H:M для этого я делаю:

datetime.strptime(str(time_value), '%I:%M').strftime('%H:%M')

, где time_value равно 3:50a или 4:25p. Теперь проблема выше строки кода не работает, потому что я не включил тег AM/PM, который %p в %I:%M, и это потому, что в файле csv я просто получаю a для AM и p для PM.

Как я могу справиться с этой ситуацией. Мне нужно конвертировать time_value в 24-часовой формат. Спасибо

1 Ответ

0 голосов
/ 15 сентября 2018

Добавьте 'm' к строке, которую вы вводите в strptime и поместите %p во второй аргумент,

>>> from datetime import datetime
>>> time_value = '3:50a'
>>> datetime.strptime(str(time_value)+'m', '%I:%M%p').strftime('%H:%M')
'03:50'
>>> time_value = '4:25p'
>>> datetime.strptime(str(time_value)+'m', '%I:%M%p').strftime('%H:%M')
'16:25'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...