Питон:преобразование свободного текста в дату
Вопрос
Предполагая, что текст набран в одно и то же время в одном и том же (израильском) часовом поясе, следующие свободные текстовые строки эквивалентны:
Wed Sep 9 16:26:57 IDT 2009
2009-09-09 16:26:57
16:26:57
September 9th, 16:26:57
Есть ли модуль python, который преобразовал бы все эти текстовые даты в (идентичный) datetime.datetime
пример?
Я хотел бы использовать его в инструменте командной строки, который получал бы дату и время freetext в качестве аргумента и возвращал эквивалентные дату и время в разных часовых поясах, например:
~$wdate 16:00 Israel
Israel: 16:00
San Francisco: 06:00
UTC: 13:00
или:
~$wdate 18:00 SanFran
San Francisco 18:00:22
Israel: 01:00:22 (Day after)
UTC: 22:00:22
Есть какие-нибудь идеи?
Спасибо,
Уди
Решение
проанализированное время кажется, это очень способный модуль для этой конкретной задачи.
Другие советы
В python-dateutil пакет звучит так, как будто это было бы полезно.В ваших примерах используются только простые временные метки HH: MM с (волшебно сокращенным) идентификатором города, но, похоже, он способен обрабатывать и более сложные форматы, подобные тем, что были приведены ранее в вопросе.
Вы могли бы вы time.strptime
Вот так :
time.strptime("2009-09-09 16:26:57", "%Y-%m-%d %H:%M:%S")
Он вернет значение struct_time (подробнее на странице python doc).