Вычисление всего _секунд в Python для модуля datetime с включенным истинным делением

Я пытаюсь сделать некоторые вычисления по дате, у меня есть объект timedelta, и я хочу чтобы получить количество секунд. Кажется, dt.total_seconds()делает именно то, что мне нужно, но, к сожалению, он был представлен в Python 2.7, а я застрял на более старой версии.

Если я прочитал официальную документацию , там указано следующее:

Вернуть общее количество секунд, содержащихся в длительности. Эквивалентно (td.microseconds + (td.seconds + td.days *24 *3600)*10 **6 )/ 10 **6 вычислено с истинным деление разрешено .

И после просмотра исходного кода модуля datetime(в C )я вижу что-то вроде этого:

total_seconds = PyNumber_TrueDivide(total_microseconds, one_million);

Таким образом, хотя вычисление total_seconds()кажется тривиальным, это заставляет меня задаться вопросом, что это за истинное деление на самом деле означает.Не нашел информации по теме. Что произойдет, если я просто использую обычное деление, зачем нам нужно это истинное деление и что оно делает? Могу ли я просто написать total_seconds()на Python с эквивалентом, указанным в документе?

9
задан Charles Menguy 26 April 2012 в 18:51
поделиться