How can I format timedelta for display

后端 未结 6 1924
Happy的楠姐
Happy的楠姐 2020-12-20 13:13

My script calculate the difference in 2 time. Like this:

lasted = datetime.strptime(previous_time, FMT) - datetime.strptime(current_time, FMT)
6条回答
  •  Happy的楠姐
    2020-12-20 13:55

    Have you tried using str()?

    >>> a = datetime.now()                 
    >>> b = datetime.now() - a
    >>> b
    datetime.timedelta(0, 6, 793600)
    >>> str(b)
    '0:00:06.793600'
    

    Alternatively, you can use string formatting:

    >>> a = datetime.now()                 
    >>> b = datetime.now() - a
    >>> s = b.total_seconds()
    >>> '{:02}:{:02}:{:02}'.format(s // 3600, s % 3600 // 60, s % 60)
    '00:00:06'
    

提交回复
热议问题