potrzebuję twojej pomocy.
Na przykład - czas pracy:
start = datetime.datetime(2014, 11, 19, 7, 15)
end = datetime.datetime(2014, 11, 19, 11, 15)
Teraz mamy czas pracy 4 godziny.
Potrzebuję funkcji, modułu lub pomocy, w której mogę uzyskać "resztę dnia".
Na przykład - czas wolny:
freetime_begin_1 = datetime.datetime(2014, 11, 19, 0, 0)
freetime_end_1 = datetime.datetime(2014, 11, 19, 7, 15)
freetime_begin_2 = datetime.datetime(2014, 11, 19, 11, 15)
freetime_end_2 = datetime.datetime(2014, 11, 19, 23, 59)
Mam nadzieję, że rozumiesz o co mi chodzi.
Dzięki.
Odpowiedzi:
0 dla odpowiedzi № 1Możesz użyć tego, na przykład:
#!/usr/bin/env python
#coding:utf-8
import datetime
def dt_desc(dt):
dt = str(dt)
days = dt[:-8]
dt = str(dt)[-8:]
h,m,s = map(lambda s:int(s.strip()),dt.split(":"))
ret = "%s"%days if len(days)!=0 else ""
ret += "%s hours "%h if h != 0 else ""
ret += "%s minutes "%m if m != 0 else ""
ret += "%s seconds"%s if s != 0 else ""
return ret
start = datetime.datetime(2014, 11, 19, 7, 15)
end = datetime.datetime(2014, 11, 19, 11, 15)
print dt_desc(end-start)
freetime_begin_1 = datetime.datetime(2014, 11, 19, 0, 0)
freetime_end_1 = datetime.datetime(2014, 11, 19, 7, 14)
freetime_begin_2 = datetime.datetime(2014, 11, 19, 11, 16)
freetime_end_2 = datetime.datetime(2014, 11, 19, 23, 59)
print dt_desc(freetime_end_1 - freetime_begin_1)
print dt_desc(freetime_end_2 - freetime_begin_2)
freetime_begin_3 = datetime.datetime(2014, 1, 19, 11, 16)
freetime_end_3 = datetime.datetime(2014, 11, 19, 23, 59)
print dt_desc(freetime_end_3 - freetime_begin_3)