Skip to main content
 首页 » 编程设计

python之如何将时间显示为 0.01 秒

2025年05月04日19findumars

以下代码返回当前时间到秒的字符串:

return("{:%Y%m%dT%H%M%S%}".format(datetime.datetime.utcnow())) 

如何将当前时间的字符串返回到百分之一(0.01)秒?

我尝试了以下方法,但找不到只显示小数秒后 2 位小数的方法。

return("{:%Y%m%dT%H%M%S%f}".format(datetime.datetime.utcnow())) 

请您参考如下方法:

你快到了。只需将 [:-4] 添加到您当前尝试删除数字的内容的末尾,这样微秒就不再可见,只有百分之一秒。正如jonrsharpe的评论中提到的那样,我宁愿像这样重新格式化:

return datetime.datetime.utcnow().strftime("%Y%m%dT%H%M%S%f")[:-4] 

所有这一切所做的就是切片 (see formatting here) 您从 strftime 获得的整个返回以获得您想要的精度。例如,如果您想说毫秒,您可以将 [:-4] 替换为 [:-3]。

编辑: 它是在您可能希望正确舍入到第 100 位的评论中提出的。如果是这样的话,我相信有一种更简单的方法可以做到这一点,但你可以实现这样的事情。如评论中所述,这将在您的 DateTime 末尾为极值 995xxx 产生不正确的值,但如果您真的关心极值,您可能应该使用 Jarek 等替代方法解决方案。

now = datetime.datetime.utcnow().strftime("%Y%m%dT%H%M%S%f") 
return  str( now[:-9] + str(round(int(now[-9:-3]), -1))[:-1])