Timedelta formato Python maior que 24 horas para exibição contendo apenas horas?

Como formato o timedelta maior que 24 horas para exibição contendo apenas horas no Python?

>>> import datetime
>>> td = datetime.timedelta(hours=36, minutes=10, seconds=10)
>>> str(td)
'1 day, 12:10:10'

# my expected result is:
'36:10:10'

Eu o alcanço por:

import datetime

td = datetime.timedelta(hours=36, minutes=10, seconds=10)
seconds = td.total_seconds()
hours = seconds // 3600
minutes = (seconds % 3600) // 60
seconds = seconds % 60

str = '{}:{}:{}'.format(int(hours), int(minutes), int(seconds))

>>> print(str)
36:10:10

Existe uma maneira melhor?

questionAnswers(3)

yourAnswerToTheQuestion