什么是yy-mm-dd'D'格式?

问题描述 投票:3回答:2

我有一些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

由于yy-mm-dd'D',我无法将其转换为代码。我搜索谷歌,但我找不到有关参考格式..是否有人知道格式?

python datetime-format
2个回答
4
投票

我认为这是ISO 8601的一个奇怪的变体。它可以用格式字符串解析:

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

0
投票

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字符串的最后三位数(纳秒)总是为零。

© www.soinside.com 2019 - 2024. All rights reserved.