python 亚秒级的 strptime 正确格式
python strptime correct format for sub seconds
我的日期时间数据是这样的:
2016-03-01 19:25:53.053404
我正在尝试使用
datetime.strptime(date, "%Y-%m-%d %HH:%MM:%SS")
但是我得到这个错误:
ValueError: time data '2016-03-01 19:24:35.165425' does not match format '%Y-%m-%d %HH:%MM:%SS'
如何修改格式“%Y-%m-%d %HH:%MM:%SS
”以匹配我的日期时间格式?
这是正确的格式:
datetime.strptime(date, '%Y-%m-%d %H:%M:%S.%f')
细分:
%H
:小时(24 小时制)作为零填充的十进制数。
%M
:以零填充的十进制数表示的分钟。
%S
:秒为补零的十进制数。
%f
:微秒为十进制数,左边补零。
您不需要在格式字符串中包含小时、秒和分钟两个字符; %S
是 "Second as a zero-padded decimal number",%H
是“小时(24 小时制)作为零填充的十进制数。”,等等。还值得注意的是,您完全缺少符号微秒 (%f
)。如果你想让你的 format_string 工作,你应该添加它。
Per the documentation(如果您计划使用 python 日期和时间进行任何重要工作,我建议将 link 添加为书签),零填充时间的正确指令,分钟和秒分别是 %H
、%M
和 %S
(没有双字符)
此外,您的输入字符串包含微秒,因此您需要从输入中删除这些微秒或同时包含 %f
指令。
因此:datetime.strptime(date, '%Y-%m-%d %H:%M:%S.%f')
我的日期时间数据是这样的:
2016-03-01 19:25:53.053404
我正在尝试使用
datetime.strptime(date, "%Y-%m-%d %HH:%MM:%SS")
但是我得到这个错误:
ValueError: time data '2016-03-01 19:24:35.165425' does not match format '%Y-%m-%d %HH:%MM:%SS'
如何修改格式“%Y-%m-%d %HH:%MM:%SS
”以匹配我的日期时间格式?
这是正确的格式:
datetime.strptime(date, '%Y-%m-%d %H:%M:%S.%f')
细分:
%H
:小时(24 小时制)作为零填充的十进制数。%M
:以零填充的十进制数表示的分钟。%S
:秒为补零的十进制数。%f
:微秒为十进制数,左边补零。
您不需要在格式字符串中包含小时、秒和分钟两个字符; %S
是 "Second as a zero-padded decimal number",%H
是“小时(24 小时制)作为零填充的十进制数。”,等等。还值得注意的是,您完全缺少符号微秒 (%f
)。如果你想让你的 format_string 工作,你应该添加它。
Per the documentation(如果您计划使用 python 日期和时间进行任何重要工作,我建议将 link 添加为书签),零填充时间的正确指令,分钟和秒分别是 %H
、%M
和 %S
(没有双字符)
此外,您的输入字符串包含微秒,因此您需要从输入中删除这些微秒或同时包含 %f
指令。
因此:datetime.strptime(date, '%Y-%m-%d %H:%M:%S.%f')