반응형
들어가며
로깅을 할때나, 어떤 특정 시간에 Event를 발생하고 싶을 경우에는 현재 시간 및 그 이전, 이후 시간을 가져올 수 있어야 합니다. 특히 로깅을 할때는 현재시간을 가져오는건 필수 중에 필수라고 할 수 있습니다. 또한 현재 시간으로 부터 1시간 뒤에 파일에 저장해 라는 명령을 할때는 특정 시간을 입력하거나, 현재시간으로 부터 1시간을 지정해 주면 됩니다 물론 timestamp에서 1000(1초) * 60 * 60 * 1 과 같이 연산을 통해서도 가능하지만, java의 Calendar와 같은 역할을 하는 datetime을 이용하면 쉽게 할 수 있습니다. datetime은 기본 모듈이고 바로 사용이 가능합니다. datetime.timedelta()를 이용하면 시간에서 일정 시간을 빼고 더할 수 있습니다. timedelta의 parameter로 days, hours, minutes를 이용하면 간편하게 시간 조절이 가능합니다.
예제코드
아래 코드는 현재시간을 가져오는 코드를 기준으로, 1시간 전/후, 내일/어제, 그리고 10분 전/10분 후 시간을 가져오는 예제코드 입니다.
import datetime
# 현재 시간 가져오기
current = datetime.datetime.now()
# 1시간 후
one_hour_later = current + datetime.timedelta(hours=1)
# 1시간 전
one_hour_ago = current - datetime.timedelta(hours=1)
# 내일 시간
tomorrow = current + datetime.timedelta(days=1)
# 어제 시간
yesterday = current - datetime.timedelta(days=1)
# 10분 후
ten_minutes_later = current + datetime.timedelta(minutes=10)
# 10분 전
ten_minutes_later = current - datetime.timedelta(minutes=10)
반응형
'Programming > Python' 카테고리의 다른 글
[Python] Type Class와 Meta Class (3) | 2016.05.23 |
---|---|
[Python] 차트 그리기 :: Pandas, Matplotlib, Numpy (0) | 2016.05.20 |
[Python] Python Logging 파이썬 로깅 모듈 (1) | 2016.05.20 |
[Python] 파이썬 파일 옮기기 - File Move구현하기 (0) | 2016.05.19 |
[Python] 파이썬 Exception 처리하기 (0) | 2016.05.19 |