개발(IT)/Python(파이썬)

파이썬(Python) 내장모듈(날짜/시간)

isony 2024. 11. 9. 14:05
반응형

파이썬(Python) 내장모듈(날짜/시간)

- 날짜와 시간 관련 처리를 할 수 있는 datetime 내장모듈

- 날짜를 표현하는 date 클래스

- 시각을 표시하는 time 클래스

- 날짜와 시각을 모두 표현하는 datetime 클래스

- 날짜와 시각의 차이를 표시하는 timedelta 클래스

from datetime import date, time, datetime, timedelta

date_class = date(year, month, day)
time_class = time(hour=0, minute=0, second=0, microsecond=0)
datetime_class = datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0)
tiedelta_class = timedelta(days=0, seconds=0, microseconds=0,
                           milliseconds=0, minutes=0, hours=0, weeks=0)

 

(예제1)

from datetime import date, time, datetime, timedelta

date_class = date(2024, 11, 9)
time_class = time(13,15, 20)
datetime_class = datetime(2024, 11, 9, 13, 15, 20)

print('날짜 : ', date_class)
print('날짜 속성 {0}/{1}/{2}'.format(date_class.year, date_class.month, date_class.day))
print('시간 : ', time_class)
print('시간 속성 {0}/{1}/{2}'.format(time_class.hour, time_class.minute, time_class.second))
print('datetime : ', datetime_class)


(결과)
날짜 :  2024-11-09
날짜 속성 2024/11/9
시간 :  13:15:20
시간 속성 13/15/20
datetime :  2024-11-09 13:15:20

 

 

(예제2)

date_class = date(2024,11,9)
date_result = date_class - timedelta(weeks=1)
print('지정날짜 {0}, 일주일 전 날짜 {1}'.format(date_class, date_result))

datetime_class = datetime(2024,11,9,11,0,0)
datetime_result = datetime_class + timedelta(hours=1, minutes=30)
print(datetime_result)


(결과)
지정날짜 2024-11-09, 일주일 전 날짜 2024-11-02
2024-11-09 12:30:00

 

 

< 날짜 및 시각 출력 양식 >

- %Y, %m, %d 는 각각 연도(4자리), 월(2자리), 일(2자리)를 표시

- %H, %M, %S 는 각각 시(2자리), 분(2자리), 초(2자리)를 표시

- %p는 오전이면 AM, 오후이면 PM

- %A, %a, %w 는 모두 요일을 표시, 전체이름(%A), 축약이름(%a), 숫자(0:일요일 ~ 6:토요일) 중 하나의 숫자로 요일 표시(%w)

- %B, %b는 월을 표시, 전체이름(%B), 축약이름(%b)

 

(예제3)

special_day = datetime(2024, 10, 9, 13, 30, 0)

print('날짜 표시(1) : {0:%Y}년 {0:%m}월 {0:%d}일'.format(special_day))
print('날짜 표시(2) : {:%Y-%d-%d}'.format(special_day))
print('시각 표시(1) : {0:%H}시 {0:%H}분 {0:%S}초 {0:%p}'.format(special_day))
print('시각 표시(2) : {:%H/%M/%S (%p)}'.format(special_day))
print('요일 표시 : {0:%A}, {0:%a}, {0:%w}'.format(special_day))
print('월 표시 : {0:%B}, {0:%b}'.format(special_day))


(결과)
날짜 표시(1) : 2024년 10월 09일
날짜 표시(2) : 2024-09-09
시각 표시(1) : 13시 13분 00초 PM
시각 표시(2) : 13/30/00 (PM)
요일 표시 : Wednesday, Wed, 3
월 표시 : October, Oct

 

반응형