تخطي للذهاب إلى المحتوى
القائمة
لقد تم الإبلاغ عن هذا السؤال
2 الردود
5357 أدوات العرض

How to compute the difference of two datetime fields and have the results in float?

الصورة الرمزية
إهمال
أفضل إجابة

The differnce of two datetime filedswoul be in a datetime format.eg: 0:45:00  . IF you  need to type cast to float then you will get ValueError: invalid literal for float(): 0:45:00. So solution is either you can split it and cast to float or take result as seconds and convert to float.
eg:Input : datetime(0:45:00)

    print float((end_date-date).seconds)

     2700.0

     print [float(i) for i in str((end_date-date)).split(":")]

     [0.0, 45.0, 0.0]  

الصورة الرمزية
إهمال
أفضل إجابة

The following should work. You would most likely have the following code execute on change of either datetime field. note: time_diff is a float field.

time_diff = fields.Datetime.from_string(self.later_datetime) - fields.Datetime.from_string(self.earlier_datetime)
self.time_diff= float(time_diff.days) * 24 + (float(time_diff.seconds) / 3600)
الصورة الرمزية
إهمال
المنشورات ذات الصلة الردود أدوات العرض النشاط
3
يوليو 23
27369
2
يونيو 22
5824
2
سبتمبر 21
4847
1
نوفمبر 20
8128
2
مارس 19
6238