Python 如何获取两个日期之间的时差(Django)

Python 如何获取两个日期之间的时差(Django),python,django,python-2.7,django-views,Python,Django,Python 2.7,Django Views,我试图减去数据库中存储的两个日期,得到小时数的差值。 但是,这些值在查询集中,所以我无法减去它们 例如: date1 = table.objects.values_list('field1').filter(id=1)) date2 = table.objects.values_list('field1').filter(id=2)) timediff = date1-date2 如何执行此操作?要获取时差,请使用datetime中的strTime方法 FMT = '%H:%M:%S' tim

我试图减去数据库中存储的两个日期,得到小时数的差值。 但是,这些值在查询集中,所以我无法减去它们

例如:

date1 = table.objects.values_list('field1').filter(id=1))
date2 = table.objects.values_list('field1').filter(id=2))
timediff = date1-date2

如何执行此操作?

要获取时差,请使用datetime中的
strTime
方法

FMT = '%H:%M:%S'
timedelta = datetime.strptime(table.objects.values_list('field1', flat=True).filter(id=1))[0], FMT) - datetime.strptime(table.objects.values_list('field1', flat=True).filter(id=2))[0], FMT)

它将返回一个
timedelta

您可以通过以下方式从queryset获取值:

date1 = table.objects.values_list('field1', flat=True).filter(id=1))[0]
date2 = table.objects.values_list('field1', flat=True).filter(id=2))[0]
timediff = date2 - date1

还请注意,timediff是
date2-date1
,而不是反之。

TypeError:-:“tuple”和“tuple”的操作数类型不受支持,上面显示的错误是,现在已解决。但它显示的差异为:1:05:26.965589。最后一个“965589”值是多少?是时间格式,请查看文档。无论如何,您可以根据自己的喜好设置日期格式