如何解决python将timedelta转换为有意义的字符串,例如“1 hours”
我想将 python timedelta 对象转换为易于阅读的有意义的字符串
例如:
0 1:0:0 -> 1 hours
0 0:5:0. -> 5 minutes
2 0:0:0. ->. 2 days
任何想法如何做到这一点?
谢谢
解决方法
实际上是 timedelta
类,直接为您提供 days
、seconds
、microseconds
属性。但是为了得到“小时”和“分钟”,你可以自己做一些简单的计算。
import datetime
d1 = datetime.datetime(2012,4,20,second=10,microsecond=14)
d2 = datetime.datetime(2012,3,second=8,microsecond=4)
delta = d1 - d2
print(delta)
print(delta.days)
print(delta.seconds)
print(delta.microseconds)
将秒除以 60 得到分钟,除以 3600 得到小时
,您可能想看看 humanize python 库:
>>> humanize.naturaldelta(dt.timedelta(seconds=1001))
'16 minutes'
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。