내가 뭔가를 계산에 "올해 월, 일의"을하지 않는 것이 기부 날짜 시간계산 날짜 시간 차이 파이썬
def timediff(time1, time2):
timeformat = '%d%b%Y:%H:%M:%S'
#time1="01MAR2016:07:11:53"
#time2="01MAR2016:16:28:38"
try:
date_object1 = datetime.strptime(time1, timeformat)
date_object2 = datetime.strptime(time2, timeformat)
except ValueError:
print "time1 format: " + repr(time1)
print "time2 format: " + repr(time2)
raise
return abs((date_object2 - date_object1).seconds)
사이의 시간 (초) 차이를 계산하는 timediff 기능을 쓰고 있어요. 이 같은에있는 경우 그것은 잘못된 답을 제공
다른과 그러나>>> t1="01MAR2016:07:11:53"
>>> t2="01MAR2016:16:28:38"
>>> timediff(t1, t2)
33405
"월, 일, 년" "월, 일 년,"올바른 계산을 제공합니다. 이것은 단지 (제공 ~ 65K 초) 시간 차이 ~ 18 시간
>>> t1="02APR2016:06:43:51"
>>> t2="06APR2016:00:58:03"
>>> timediff(t1, t2)
65652
또는 24 다른이 0
>>> t1="01MAR2016:07:11:53"
>>> t2="02MAR2016:07:11:53"
>>> timediff(t1, t2)
0
날짜 시간 내가
>>> t1="01MAR2016:07:11:53"
>>> t2="02MAR2016:07:11:53"
>>> datetime.strptime(t1, timeformat)
datetime.datetime(2016, 3, 1, 7, 11, 53)
>>> datetime.strptime(t2, timeformat)
datetime.datetime(2016, 3, 2, 7, 11, 53)
암을 제공하는 시간 형식을 취 제공을 계산 나는 아무것도 없어?
날짜를 초로 변환하는 또 다른 방법이 있습니다. 그러나 아직도이 방법이 효과가없는 이유를 알고 싶습니다.
내 다른
def timediff(time1, time2):
timeformat = '%d%b%Y:%H:%M:%S'
t1 = datetime.strptime(time1, timeformat)
t2 = datetime.strptime(time2, timeformat)
return abs(time.mktime(t1.timetuple()) - time.mktime(t2.timetuple()))
예 :
>>> t2
'02MAR2016:07:11:53'
>>> t1
'01MAR2016:07:11:53'
>>> timediff(t1,t2)
86400.0
당신은'사용 ()' –
당신 말이 맞아요! 명확히 해 주셔서 감사합니다. .total_seconds()이 (가) 있다는 것을 알지 못했습니다. – Nogcas