Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

Python으로 어제, 오늘, 내일 날짜 구하기 — datetime 활용법

Python에서는 현재 날짜를 기준으로 어제, 오늘, 내일 날짜를 아주 간단하게 구할 수 있습니다. 핵심은 datetime 모듈과 timedelta 클래스입니다. datetime.now()로 현재 시각을 가져온 뒤, timedelta에 원하는 일수를 더하거나 빼면 이전 날짜와 다음 날짜를 손쉽게 계산할 수 있습니다.

예제 코드

from datetime import datetime, timedelta

present = datetime.now()
yesterday = present - timedelta(1)
tomorrow = present + timedelta(1)

print("Yesterday was :")
print(yesterday.strftime('%d-%m-%Y'))
print("Today is :")
print(present.strftime('%d-%m-%Y'))
print("Tomorrow would be :")
print(tomorrow.strftime('%d-%m-%Y'))

실행 결과

Yesterday was :
05-04-2021
Today is :
06-04-2021
Tomorrow would be :
07-04-2021

코드 설명

  • datetime 모듈에서 datetime 클래스와 timedelta 클래스를 임포트합니다.

  • datetime.now() 메서드를 사용해 현재 날짜와 시각을 구한 뒤 변수 present에 저장합니다.

  • timedelta(1)은 '하루'라는 시간 간격을 의미합니다. 인자로 전달된 숫자만큼의 일수를 나타냅니다.

  • 현재 날짜에서 timedelta빼면 어제 날짜가, 더하면 내일 날짜가 계산됩니다.

  • strftime('%d-%m-%Y')를 사용해 날짜를 '일-월-연도' 형식의 문자열로 변환하여 출력합니다.

추가 팁

timedelta에는 일수 외에도 weeks, hours, minutes, seconds 등 다양한 인자를 사용할 수 있습니다. 예를 들어 timedelta(weeks=1)을 사용하면 일주일 전후의 날짜를 구할 수 있고, timedelta(hours=5)처럼 시간 단위 계산도 가능합니다.

또한 출력 형식을 바꾸고 싶다면 strftime의 포맷 코드를 조정하면 됩니다. 예를 들어 '%Y년 %m월 %d일'로 지정하면 한국어 스타일의 날짜 문자열을 얻을 수 있습니다.