datetime 모듈은 파이썬에서 날짜·시간을 다루는 표준 도구입니다.
날짜 계산·포맷팅·파싱·시간대 처리까지 모든 시간 관련 작업의 기본이 됩니다.
기본 사용.
from datetime import datetime, date, timedelta.
now = datetime.now() — 현재 시각.
today = date.today() — 오늘 날짜.
d = datetime(2026, 4, 27, 10, 30) — 특정 시각.
포맷팅·파싱.
now.strftime("%Y-%m-%d %H:%M") — 객체를 문자열로("2026-04-27 10:30").
datetime.strptime("2026-04-27", "%Y-%m-%d") — 문자열을 객체로.
「f」가 format(객체→문자열), 「p」가 parse(문자열→객체)입니다.
날짜 계산.
timedelta(days=7) — 7일 차이.
now + timedelta(days=7) — 일주일 후.
(now - past_date).days — 두 날짜 사이의 일수.
날짜·시간 산술이 매우 자연스럽게 표현됩니다.
시간대(timezone) 처리.
import pytz 또는 Python 3.9+의 zoneinfo.
seoul = ZoneInfo("Asia/Seoul").
dt = datetime.now(seoul) — 서울 시간.
UTC와의 변환, DST(서머타임) 처리가 필요할 때 시간대 인식 객체가 필수입니다.
시간대 없는 「naive datetime」과 있는 「aware datetime」을 섞지 않는 게 흔한 함정 회피 비결입니다.
한 줄 요약
datetime 모듈은 now·today로 시각·날짜 생성, strftime·strptime으로 포맷·파싱, timedelta로 산술을 합니다.
시간대 처리에는 zoneinfo(Python 3.9+)나 pytz가 필요합니다.
더 알아볼 것
- 주요 strftime 포맷 코드
- arrow·pendulum — 더 친절한 라이브러리
- Unix 타임스탬프 변환