我有这样的timedelta时间:
datetime.timedelta(0, 175, 941041)
我想将此转换为持续时间。例如:
1 second
2-59 seconds
1 minute
2minutes-59minutes
1 hour
1 hour 50 minutes
2 hours
1 day 5 hours 45 minutes
我怎样才能在Python中执行此操作?
首先,我尝试将timedelta转换为这样的秒数,然后转换为持续时间:
def timedelta_to_seconds(td):
return td.microseconds + (td.seconds + td.days * 86400)
但是在运行此函数时出现此错误:
AttributeError: 'function' object has no attribute 'microseconds'
答案 0 :(得分:1)
你可以做到
>>> import datetime
>>> str(datetime.timedelta(0, 175, 941041))
'0:02:55.941041'
现在您可以获得小时,分钟,秒和毫秒。
OR
答案 1 :(得分:1)
我想你传递给这个函数的不是timedelta,这就是为什么它没有属性微秒。
我不时有这个,当我调用函数来获取timedelta为
时a=get_my_timedelta
而不是
a=get_my_timedelta()