• 회원가입
  • 로그인
  • 구글아이디로 로그인

[basic] Python - Datetime (날짜시간) 표시

4174  

목차

  1. Python 날짜
  2. datetime 모듈 - 날짜시간 출력
  3. datetime() 메서드 - 날짜 객체 생성
  4. strftime() 메서드 - 날짜 표기 변경
  5. 날짜 포맷 코드
  6. 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



분류 제목
basic Python - Home (입문) - 이념 / 추천 링크
basic Python - Intro (소개) - 용도・특징
basic Python - Start (시작) - 파이썬 설치/실행/버전확인
basic Python - Syntax (구문) - 들여쓰기・변수・주석
basic Python - Comment (주석)
basic Python - Variable (변수)
basic Python - DataType (데이터타입) - 자료형
basic Python - Number (숫자)
basic Python - Casting (데이터 타입 변경) - 자료형 변환
basic Python - String (문자열) ★ ※ 색인번호 (= 인덱스) 개념.
basic Python - Boolean (참거짓)
basic Python - Operator (연산자)
basic Python - List (리스트) ★ - 변경 가능한 모음
basic Python - Tuple (투플/튜플) - 변경 불가 모음
basic Python - Set (셋/세트) - '순서(=색인)' 없고, 중복 허용 않는 데이터 모음.
basic Python - Dictionary (딕셔너리) - Key:value 쌍으로 구성된 모음
basic Python - if...elif...else - (이프조건문) ※ 3항연산자 = 삼항연산자
basic Python - While (와일반복문) - 와일문
basic Python - For (포반복문) ★★★★★
basic Python - Function (함수)
1/24
목록
찾아주셔서 감사합니다. Since 2012