0
我需要比較兩個時間字段值並計算總工作時間。Django時間字段差異
我的功能(我想什麼)
def difft(start,end):
a,b,c,d = start.hour, start.minute, start.second, start.microsecond
w,x,y,z = end.hour, end.minute, end.second, end.microsecond
delt = (w-a)*60 + (x-b) + (y-c)/60. + (z-d)/60000000
return delt + 1440 if delt<0 else delt
def myfunction():
attendance = StaffAttendance.objects.get(id=1)
time_sheets = []
t_times = TimeSheet.objects.filter(staff_attendance=attendance,is_deleted=False).order_by("time")
for t in t_times:
time_sheets.append(t.time)
#timesheets = [datetime.time(4, 0), datetime.time(6, 0)]
total_time = 0
times = []
for time in time_sheets:
if time in times:
m = difft(times[0],time)
total_time += m
times = []
else:
times.append(time)
if time in times:
這一塊總是返回False
。
如何計算django時間字段的總工作時間。我是Python/Django的新手。所以我對python日期不太瞭解。你能幫我解決這個問題嗎?謝謝。
你可以放一個打印語句來看看'time_sheets'和'times'的值在循環中嗎? – karthikr
'if time in times:'總是會返回false,因爲'times'是一個空列表('[]')。 – Leistungsabfall
[計算時間差]的可能重複(http://stackoverflow.com/questions/3426870/calculating-time-difference) – eykanal