减去两个 QDateTime

Subtract two QDateTime

我的问题是试图找到两个不同 QDateTime 之间的时差。我找不到减去 QDateTime 的函数。我是否必须将它变成一个字符串并创建一个减去的函数或将它变成一个列表并创建一个减去的函数。我还想在 MySql 数据库中存储两次和差异。

我知道如何使用 addSecs、addDays 等为一个 QDateTime 加减秒、天、月和年

这是一个例子:

PyQt5.QtCore.QDateTime(2000, 1, 31, 23, 0)

PyQt5.QtCore.QDateTime(2000, 2, 1, 0, 0)

1 月 31 日星期一23:00:002000

2 月 1 日星期二00:00:002000

['Mon', 'Jan', '31', '23:00:00', '2000']

['Tue', 'Feb', '1', '00:00:00', '2000']

这里是代码:

    def enter(self):
        self.a= self.dateTimeEdit.dateTime()
        self.b= self.dateTimeEdit_2.dateTime()
        print(self.a)
        print(self.b)
        print(self.a.toString())
        print(self.b.toString())
        print(self.a.toString().split())
        print(self.b.toString().split())

相差一个小时。

可以使用QDateTimesecsTo方法:

Returns the number of seconds from this datetime to the other datetime. If the other datetime is earlier than this datetime, the value returned is negative.

self.a.secsTo(self.b) 对应于 self.b 减去 self.a 应该 return 3600.

另外,QDateTime 也有 msecsTo and daysTo 方法分别用于毫秒和天的差异,您可以使用相同的方法。