Как получить метку времени из словаря и преобразовать ее в объект datetime? - PullRequest
1 голос
/ 11 апреля 2011

У меня есть словарь временных меток в этом виде 2011-03-01 17: 52: 49.728883 и идентификаторы.Как я могу получить последнюю метку времени и представить ее в объекте python datetime?

Суть в том, чтобы иметь возможность использовать самую последнюю дату метки времени вместо текущей даты в приведенном выше коде.

Ответы [ 2 ]

2 голосов
/ 11 апреля 2011

Структура вашего словаря не совсем понятна из вашего вопроса, поэтому я предполагаю, что ключи - это строки, содержащие метки времени, подобные той, что в вашем вопросе.

Если d - словарь:

datetime.strptime(max(d.keys()),'%Y-%m-%d %H:%M:%S.%f')

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

max(map(lambda dt:datetime.strptime(dt,'%Y-%m-%d %H:%M:%S.%f'),d.keys()))

0 голосов
/ 11 апреля 2011

См.

Как проанализировать дату в формате ISO 8601?

для разбора дат в формате ISO.

Вставка экземпляров даты и времени в список и их сортировка просты:

http://wiki.python.org/moin/HowTo/Sorting

...