Format a timedelta object
Steven D'Aprano
steve at pearwood.info
Fri May 27 12:21:55 EDT 2016
On Thu, 26 May 2016 03:28 pm, Zachary Ware wrote:
> On Thu, May 26, 2016 at 12:16 AM, Steven D'Aprano
> <steve+comp.lang.python at pearwood.info> wrote:
>> I have a timedelta object, and I want to display it in a nice
>> human-readable format like 03:45:17 for "three hours, forty five minutes,
>> 17 seconds".
>>
>> Is there a standard way to do this?
>
> >>> timedelta(100)
> datetime.timedelta(100)
> >>> str(timedelta(seconds=100))
> '0:01:40'
> >>> str(timedelta(hours=100))
> '4 days, 4:00:00'
>
> (I recently spent *way* too long trying to figure out how to properly
> format the thing before being reminded that a plain str call gives
> exactly what I was after.)
Thanks Zach. Unfortunately, the format is not quite how I want it, so I
guess I'll have to extract the H:M:S fields manually from the seconds.
--
Steven
More information about the Python-list
mailing list