Что такое формат yy-mm-dd'D? - PullRequest
       7

Что такое формат yy-mm-dd'D?

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

Я получил несколько CSV-файлов.Внутри файла есть отметка времени, подобная этой

timestamp
2018-08-04D00:00:03.340429000
2018-08-04D00:00:03.911072000
2018-08-04D00:00:04.109119000
2018-08-04D00:00:05.348754000
2018-08-04D00:00:07.569001000
2018-08-04D00:00:08.666946000
2018-08-04D00:00:09.247728000
2018-08-04D00:00:09.247728000
2018-08-04D00:00:09.538240000
2018-08-04D00:00:09.715869000

Я не смог преобразовать ее в код из-за гг-мм-дд 'D' .Я искал в Google, но не могу найти ссылку на формат. Кто-нибудь знает о формате?

Ответы [ 2 ]

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

Прелесть модуля datetime в том, что вы можете использовать его для анализа почти всего, если вы знаете, что ищете:

import datetime
datetime.datetime.strptime("2018-08-04D00:00:03.340429000", 
                           "%Y-%m-%dD%H:%M:%S.%f000")
#datetime.datetime(2018, 8, 4, 0, 0, 3, 340429)

Обратите внимание, что '%f' анализирует микросекунды итребует, чтобы после десятичной точки было только шесть знаков после запятой.Оставшиеся три ноля в моей строке формата говорят strptime, что последние три цифры строки (наносекунды) всегда являются нулями.

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

Я думаю, что это странный вариант ISO 8601. Его можно проанализировать с помощью строки формата:

datetime.strptime(d[:-3], "%Y-%m-%dD%H:%M:%S.%f")
...