목차
Python 날짜
datetime 모듈 - 날짜시간 출력
datetime() 메서드 - 날짜 객체 생성
strftime() 메서드 - 날짜 표기 변경
날짜 포맷 코드
time 모듈 (날짜시간 출력)
Python 날짜
파이썬엔 날짜라는 고유 데이터유형 존재 안 함.
대신,
datetime 모듈 가져와 날짜를 날짜 객체로 사용.
※ 현재 시간날짜 : datetime 객체의 now() 메서드 이용.
[예제] 현재 날짜시간
import datetime as dt
x = dt.datetime.now()
print(x)
결과값: 2020-11-20 06:17:09.709777
※ 2020-11-20 : 년원일
※ 06:17:09 : 시분초
※ 709777 : 마이크로초
datetime 모듈 - 날짜시간 출력
※ datetime 모듈은 다양한 날짜 출력 방법 지원. (※ 맨 하단 참고.)
현재 시간 출력.
dt .datetime.now()
특정 시간 출력. ※ 아래서 자세히 설명.
dt .datetime(year, month, day, hour, minute, second, microsecond, tzinfo )
[예제]
import datetime as dt
x = dt.datetime.now()
print(x ) # 2020-11-20 09:31:35.502926
print(dir (x) ) # 날짜 객체 x에 속하는 속성・메서드 확인.
print(x.year ) # 2020 (년)
print(x.month ) # 11 (월)
print(x.day ) # 20 (일)
print(x.hour ) # 9 (시)
print(x.minute ) # 9 (분)
print(x.second ) # 49 (초)
print(x.microsecond ) # 40064 (마이크로 초)
print(x.tzinfo ) # None (타임존)
print(x.strftime("%A") ) # Friday
datetime() 메서드 - 날짜 객체 생성
datetime 모듈에 속하는 datetime() 클래스 (= 날짜생성자) 이용.
[구문] ※ dt : datetime 모듈.
dt .datetime(year, month, day, hour, minute, second, microsecond, tzinfo )
[매개변수]
year, month, day
필수. 년원일
hour, minute, second, microsecond
선택. 시, 분, 초, 마이크로초 (각 기본값: 0)
tzinfo
선택. 타임존. (기본값: None)
[예제]
import datetime as dt
x = dt.datetime(2020, 11, 20)
print(x) # 2020-11-20 00:00:00
strftime() 메서드 - 날짜 표기 변경
날짜 객체에 속하는 strftime() 메서드로 읽기 가능한 문자열로 변환.
[구문] ※ date : 날짜 객체.
date .strftime( formats )
[매개변수]
formats
필수. 날짜 포맷 방식. (※ 하단 포맷 코드 참고)
※ 여러 개 사용 가능. (예) %Y-%m-%d : 2020-11-20
※ 지정 안 하거나, % 기호 뒤 공백 있으면 에러 발생.
[예제] 월 이름을 기본형태로 반환.
import datetime as dt
x = dt.datetime(2020, 11, 20)
print(x .strftime("%B") ) # November
날짜 포맷 코드
%a : 요일 이름 (축약형) (예) Sun, Mon, Tus, ...
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%a") ) # Fri
%A : 요일 이름 (기본형) (예) Sunday, Monday, Tuesday, ...
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%A") ) # Friday
%w : 요일숫자 ★ (예제) 0 ~ 6 (※ 0:일요일, ... ,6:토요일)
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%w") ) # 5
%d : 일 ★ (예제) 01~31
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%d") ) # 20
%b : 월 이름 (축약형) (예) Jan, Feb, ...
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%b") ) # Nov
%B : 월 이름 (기본형) (예제) January, Februay, ...
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%B") ) # November
%m : 월 ★ (예) 01~12
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%m") ) # 11
%y : 년 (축약형) (예) 20 (※ 2020년 경우)
※ 윈도우: 1900년부터 지원. (※ 00 : 1900년, 2000년, ...)
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%y") ) # 20
%Y : 년 (기본형) ★ (예) 2020 (※ 2020년 경우)
※ 윈도우: 서기 1년부터 지원. (※ 0001 : 서기 1년 경우)
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%Y") ) # 2020
%H : 시 (24시간제) ★ (예) 00~23
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%H") ) # 13 (※ 오후 1시)
%I : 시 (12시간제) ★ (예) 00~12
※ %P (AM/PM)과 주로 함께 사용.
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%I") ) # 01 (※ 오후 1시)
%p : AM/PM ★ ※ AM:오전 , PM:오후
※ %I (12시간제 시)와 주로 함께 사용.
※ p를 대문자로 적으면 에러 발생.
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%p") ) # AM
%M : 분 (예) 00~59
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%M") ) # 43
%S : 초 (예) 00~59
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%S") ) # 03
%f : 마이크로 초 (예) 000000-999999
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%f") ) # 383767
%z : UTC 오프셋 (예) +0100
예제 준비 중.
%Z : 시간대(= 타임존) (예) CST
예제 준비 중.
%j : 일 순번 (예) 001~366 (※ 보통: 365, 유년: 366)
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%j") ) # 325
%U : 주 순번. (※ 일요일 주 시작) (예) 00~53
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%U") ) # 46
%W : 주 순번. (※ 월요일 주 시작) (예) 00~53
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%W") ) # 46
%c : 날짜시간 로컬 버전. (예) Fri Nov 20 09:07:31 2020
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%c") ) # Fri Nov 20 09:07:31 2020
%x : 날짜 로컬 버전 (예) 11/20/20 (※ 월/일/년)
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%x") ) # 11/20/20
%X : 시간 로컬 버전 (예) 09:13:17 (※ 시:분:초)
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%X") ) # 09:13:17
%% : % 특수문자. (예) %
import datetime as dt
x = dt.datetime.now()
print(x.strftime("%%") ) # %
PS. 주의: 포맷 기호인 %뒤에 공백 있으면 에러 발생.
time 모듈 (날짜시간 출력)
import time
print(time.time() )
# 1616544596.248772
print(time.strftime('%Y-%m-%d %H:%M:%S') )
# 2021-03-24 09:09:56
평정심 님 (210324) https://sir.kr/qa/405400
주소 복사
랜덤 이동
최신댓글