[파이썬 Python] 날짜, 시간값의 연산법, 시간차이 구하기(몇시간, 몇분 전/후 등)

Sever 2015. 4. 7. 19:53
반응형

파이썬의 날짜문자열의 시간값 전환에 대해서는 이미 포스팅 한 바 있다.

내용을 확인하고 싶으신 분은 요기에서 확인하시길...

자, 그리하여 이번 포스팅에서 알아보고자 하는것은 시간값의 연산이다.
연산이라면,, 사칙연산..??

맞다.

즉, 어떤 시간값에 대해 특정 시간만큼 이전, 혹은 이후를 구하기 위한 방법이다.
그럼 START..

==================================================================

일단 이 연산을 하기 위해서는 datetime 모듈이 필요하다.
아래처럼 import부터 하자

from datetime import datetime, timedelta

==================================================================

자 그럼 현재시간으로부터 25분, 30초 전/후를 각각 알아보자

# 25분 전/후

now = datetime.now()
timegap = timedelta(minutes=25)
before = now - timegap
after = now + timegap

print "Current : ",now.strftime('%Y-%m-%d %H:%M:%S')
print "Before : ",before.strftime('%Y-%m-%d %H:%M:%S')
print "After : ",after.strftime('%Y-%m-%d %H:%M:%S')

# 30초 전/후

now = datetime.now()
timegap = timedelta(seconds=30)
before = now - timegap
after = now + timegap

print "Current : ",now.strftime('%Y-%m-%d %H:%M:%S')
print "Before : ",before.strftime('%Y-%m-%d %H:%M:%S')
print "After : ",after.strftime('%Y-%m-%d %H:%M:%S')

====================================================================

단순히 datetime으로 현재 시간을 구한 이후에는 timedelta의 Timeunit을 지정하여
원하는 변경시간만큼 +/- 를 해주면 된다.

아래는 Python 홈페이지의 원문에서 표기되어있는 timedelta가 사용가능한 Timeunit 일람이다.
빨간색으로 표기된 부분을 아래의 다양한 변환 값을 이용한다면 원하는 시간으로 얼마든지 변경할수 있다!

class datetime.timedelta([days[seconds[microseconds[milliseconds[minutes[hours[weeks]]]]]]])

자세한 내용은 파이썬 Documentation을 참고하시길 바란다.
그럼 이만 ^^

반응형

'Sever' 카테고리의 다른 글

a href onclick parameter 전달 방법  (0) 2015.04.29
footer 영역 항상 하단에 고정하기  (0) 2015.04.27
Using Google Cloud SQL  (0) 2015.04.07
How to escape < and > inside <pre> tags  (0) 2015.04.06
GAE/Python で JSONP  (0) 2015.03.27
: