Код в вашем вопросе неполный, но предполагается, что вы на самом деле делаете что-то вроде этого:
self.duration = float(timediff)
… и вам нужно общее количество секунд, представленное timediff
в виде числа с плавающей запятойВы можете получить это, используя метод timedelta.total_seconds()
:
self.duration = timediff.total_seconds()
Возвращает число с плавающей запятой, поэтому преобразование не требуется.