How do I convert seconds to hours, minutes and seconds? How do I convert seconds to hours, minutes and seconds? python python

# How do I convert seconds to hours, minutes and seconds?

You can use `datetime.timedelta` function:

``>>> import datetime>>> str(datetime.timedelta(seconds=666))'0:11:06'``

By using the `divmod()` function, which does only a single division to produce both the quotient and the remainder, you can have the result very quickly with only two mathematical operations:

``m, s = divmod(seconds, 60)h, m = divmod(m, 60)``

And then use string formatting to convert the result into your desired output:

``print('{:d}:{:02d}:{:02d}'.format(h, m, s)) # Python 3print(f'{h:d}:{m:02d}:{s:02d}') # Python 3.6+``

I can hardly name that an easy way (at least I can't remember the syntax), but it is possible to use time.strftime, which gives more control over formatting:

``from time import strftimefrom time import gmtimestrftime("%H:%M:%S", gmtime(666))'00:11:06'strftime("%H:%M:%S", gmtime(60*60*24))'00:00:00'``

gmtime is used to convert seconds to special tuple format that `strftime()` requires.

Note: Truncates after 23:59:59