본문 바로가기
언어/Python

[Python] 자주쓰는 datetime모듈 정리

by 푸푸망나뇽 2021. 9. 14.
반응형

1. 시간,날짜 더하거나 빼기 (n일 후,n시간 전 등등)

 

  • datetime.timedelta() 함수 : 모듈은 두 날짜의 차이 기간을 나타낼 때 사용하는 모듈

days, seconds, microseconds, milliseconds, minutes, hours, weeks 에 대해 차이를 계산할수있다.

month는 제공하지않는다.

import datetime

now = datetime.datetime.now()
now_after = now + datetime.timedelta(days=10)
# 10일 후 계산
print(now_after)

 

2. 두 datetime의 차이

  • 두 datetime을 빼면 timedelta가 반환되고 timedelta에서 여러 함수를 통해 날짜 차이를 구할수있다.

days, microseconds, seconds 제공하며 hours, weeks 등은 제공하지않는다.

from datetime import datetime

now  = datetime.now()
# now : 2021-01-09 21:51:33.170644

date_to_compare = datetime.strptime("20201225", "%Y%m%d")
# date_to_compare : 2020-12-25 00:00:00

date_diff = now - date_to_compare
datetime.timedelta(15)

print("일 수 차이 :", date_diff.days)	# 일 수 차이 : 15
print("마이크로초 차이 :", date_diff.microseconds)	# 마이크로초 차이 : 170644
print("초 차이 :", date_diff.seconds)	# 초 차이 : 78693
print("분 차이 :", date_diff.seconds / 60)	# 분 차이 : 1311.55
print("시간 차이 :", date_diff.seconds / 3600)	# 시간 차이 : 21.859166666666667

 

 

 

3. 문자열을 datetime으로 변경

  • datetime.datetime.strptime('날짜문자열', '포맷') : 문자열 -> datetime
  • datetime객체.strftime('포맷') : datetime -> 문자열

 

import datetime

# 사용형식
datetime.datetime.strptime('날짜문자열', '포맷')

# 문자열 -> datetime
st = datetime.datetime.strptime('2018-05-19', '%Y-%m-%d')
# datetime.datetime(2018, 5, 19, 0, 0)


# 사용 형식
datetime객체.strftime('포맷')

# datetime -> 문자열
st.strftime('%Y-%m-%d')
# '2018-05-19'
반응형

'언어 > Python' 카테고리의 다른 글

[Python] n진수 변환 정리  (0) 2021.09.13

댓글