Разница во времени между двумя объектами Date/time Edit

Не могу найти хороший пример, как можно с помощью PyQt рассчитать разницу во времени между двумя объектами QDateTimeEdit

С помощью .dateTime можно вытащить из объектов QDateTimeEdit по кортежу.

Есть ли простой способ получить int разницу (в минутах, часах итд) между двумя объектами (или хотя бы кортежами), не городя трёхэтажных структур?

Находил примеры расчёта разницы между текущим и временем, указанным в объекте QDateTimeEdit


Ответы (1 шт):

Автор решения: Alexander Chernin

Вроде бы не трехэтажно (хм... одноэтажно, с логичной и законной пристройкой):

from PySide2.QtCore import QDateTime, QTime, QDate

#from PySide6.QtCore import QDateTime, QTime, QDate
#from PyQt5.QtCore import QDateTime, QTime, QDate

dateTime1 = dateTimeEdit1.dateTime()
dateTime2 = dateTimeEdit2.dateTime()

# Получение разницы в количестве миллисекунд
dmsec = dateTime1.msecsTo(dateTime2)

# Из полученной разницы формируем объект QDateTime,
# из которого берем QTime, откуда берем часы и минуты
t = QDateTime(QDate(1,1,1), QTime(0, 0)).addMSecs(dmsec).time()

print(f"h: {t.hour()} m: {t.minute()}")
→ Ссылка