# Python program to convert seconds into hours, minutes and seconds

Given an integer n (in seconds), convert it into hours, minutes and seconds.

Examples:

```Input : 12345
Output : 3:25:45

Input : 3600
Output : 1:00:00
```

Approach #1 : Naive

This approach is simply a naive approach to get the hours, minutes and seconds by simple mathematical calculations.

 `# Python Program to Convert seconds ` `# into hours, minutes and seconds ` ` `  `def` `convert(seconds): ` `    ``seconds ``=` `seconds ``%` `(``24` `*` `3600``) ` `    ``hour ``=` `seconds ``/``/` `3600` `    ``seconds ``%``=` `3600` `    ``minutes ``=` `seconds ``/``/` `60` `    ``seconds ``%``=` `60` `     `  `    ``return` `"%d:%02d:%02d"` `%` `(hour, minutes, seconds) ` `     `  `# Driver program ` `n ``=` `12345` `print``(convert(n)) `

Output:

```3:25:45
```

Approach #2 : Alternate to the Naive approach

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.

 `# Python Program to Convert seconds ` `# into hours, minutes and seconds ` ` `  `def` `convert(seconds): ` `    ``min``, sec ``=` `divmod``(seconds, ``60``) ` `    ``hour, ``min` `=` `divmod``(``min``, ``60``) ` `    ``return` `"%d:%02d:%02d"` `%` `(hour, ``min``, sec) ` `     `  `# Driver program ` `n ``=` `12345` `print``(convert(n)) `

Output:

```3:25:45
```

Approach #3 : Using `timedelta` (Object of `datetime` module)

Datetime module provides timedelta object which represents a duration, the difference between two dates or times. `datetime.timedelta ` can be used to represent seconds into hours, minutes and seconds format.

 `# Python Program to Convert seconds ` `# into hours, minutes and seconds ` `import` `datetime ` ` `  `def` `convert(n): ` `    ``return` `str``(datetime.timedelta(seconds ``=` `n)) ` `     `  `# Driver program ` `n ``=` `12345` `print``(convert(n)) `

Output:

```3:25:45
```

Approach #4 : Using `time.strftime()`

`time.strftime()` gives more control over formatting. The format and `time.gmtime()` is passed as argument. gmtime is used to convert seconds to special tuple format that `strftime()` requires.

 `# Python Program to Convert seconds ` `# into hours, minutes and seconds ` ` `  `import` `time ` ` `  `def` `convert(seconds): ` `    ``return` `time.strftime(``"%H:%M:%S"``, time.gmtime(n)) ` `     `  `# Driver program ` `n ``=` `12345` `print``(convert(n)) `

Output:

```03:25:45
```

My Personal Notes arrow_drop_up If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

Article Tags :

Be the First to upvote.

Please write to us at contribute@geeksforgeeks.org to report any issue with the above content.