본문 바로가기
Python/문법

Python 날짜와 시간 다루기

by ssury94 2025. 1. 21.

 

파이썬은 날짜와 시간을 다루기 위한 강력한 라이브러리를 제공합니다. 이 글에서는 datetime, time, 그리고 calendar 모듈을 활용하여 날짜와 시간을 다루는 방법을 알아보겠습니다.

 

datetime 모듈 임포트

from datetime import datetime

1. datetime 모듈

datetime 모듈은 날짜와 시간을 모두 다룰 수 있는 기능을 제공합니다.

현재 날짜와 시간 가져오기

# 현재 날짜와 시간
now = datetime.now()
print("현재 날짜와 시간:", now)

특정 날짜 생성하기

from datetime import datetime

# 특정 날짜 생성
specific_date = datetime(2025, 1, 21, 15, 30)
print("특정 날짜:", specific_date)

날짜 포맷 변경하기

from datetime import datetime

# 날짜를 문자열로 포맷팅
now = datetime.now()
formatted_date = now.strftime("%Y-%m-%d %H:%M:%S")
print("포맷팅된 날짜:", formatted_date)

# 문자열을 날짜로 변환
date_string = "2025-01-21 15:30:00"
parsed_date = datetime.strptime(date_string, "%Y-%m-%d %H:%M:%S")
print("문자열에서 변환된 날짜:", parsed_date)

날짜 계산하기

from datetime import datetime, timedelta

# 현재 날짜와 시간
now = datetime.now()

# 7일 후
future_date = now + timedelta(days=7)
print("7일 후:", future_date)

# 7일 전
past_date = now - timedelta(days=7)
print("7일 전:", past_date)

2. time 모듈

time 모듈은 주로 시간 측정과 관련된 작업에 사용됩니다.

현재 시간 가져오기

import time

# 현재 시간 (초 단위로 반환)
current_time = time.time()
print("현재 시간 (초):", current_time)

# 시간 포맷팅
formatted_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(current_time))
print("포맷팅된 시간:", formatted_time)

시간 지연 주기

import time

print("3초 대기 중...")
time.sleep(3)
print("완료!")

3. calendar 모듈

calendar 모듈은 달력을 생성하거나 특정 날짜가 어떤 요일인지 확인할 때 유용합니다.

달력 출력하기

import calendar

# 2025년 1월의 달력
print(calendar.month(2025, 1))

# 2025년 전체 달력
print(calendar.calendar(2025))

요일 확인하기

import calendar

# 특정 날짜의 요일 확인 (0: 월요일, 6: 일요일)
year, month, day = 2025, 1, 21
weekday = calendar.weekday(year, month, day)
print("요일:", weekday)

4. zoneinfo를 사용한 시간대 처리 (Python 3.9+)

zoneinfo 모듈은 시간대를 다룰 때 사용됩니다.

시간대 설정하기

from datetime import datetime
from zoneinfo import ZoneInfo

# 시간대 설정
seoul_time = datetime.now(ZoneInfo("Asia/Seoul"))
new_york_time = datetime.now(ZoneInfo("America/New_York"))

print("서울 시간:", seoul_time)
print("뉴욕 시간:", new_york_time)

결론

파이썬의 날짜와 시간 관련 모듈은 매우 강력하며 다양한 작업에 활용될 수 있습니다. 이 글에서 다룬 내용을 바탕으로 여러분의 프로젝트에 필요한 날짜 및 시간 처리를 손쉽게 구현해보세요!