본문 바로가기
Developer/Python

Python 날짜, 시간을 문자열로 변환하는 방법 (date to string, time to string) - strftime

by roqkfrlfhr 2021. 12. 29.

Python 날짜, 시간을 문자열로 변환하는 방법 (date  to string, time to string) - strftime

 

Python 에서 날짜 형식시간 형식원하는 문자열 형식으로 변환하는 방법을 알려드리도록 하겠습니다.

Python 에서 strftime() 을 사용하시면 datetime, time 등의 날짜, 시간 형식을 원하는 문자열로 변경할 수 있습니다.

 

strftime()

from datetime import datetime

dt = datetime(2021, 12, 31, 13, 35, 42, 657813)

result = dt.strftime("%Y년 %m월 %d일 %H시 %M분 %S.%f초")

print("문자열 변환 전 형식 : ", type(dt))
print("문자열 변환 후 출력 : ", dt)
print("문자열 변환 후 형식 : ", type(result))
print("문자열 변환 후 출력 : ", result)

# Output
# 문자열 변환 전 형식 :  <class 'datetime.datetime'>
# 문자열 변환 후 출력 :  2021-12-31 13:35:42.657813
# 문자열 변환 후 형식 :  <class 'str'>
# 문자열 변환 후 출력 :  2021년 12월 31일 13시 35분 42.657813초

datetime 모듈을 사용하여 날짜와 시간을 지정하고 출력하는 예시를 들었습니다.

strftime() 을 사용하여 위와 같이 날짜, 시간 형식을 원하는 문자열 형식으로 변환하여 사용할 수 있습니다.

datetime 모듈 뿐만 아니라 time 모듈에도 사용 가능합니다.

 

 

strftime()에 사용되는 포맷 코드는 예시에 사용된 것 이외에도 아주 많은 것들이 있습니다.

strftime 포맷 코드 표

그룹 코드 의미
%Y 연도 (전체)
%y 연도 (뒤에 2자리만)
%m
%B Locale 월 표현 (전체)
%b Locale 월 표현 (축약형)
%d
%j 연중 일
%H 시 (24시간제)
%I 시 (12시간제)
%p Locale 오전, 오후
%M
%S
마이크로초 %f 마이크로초
요일 %w 요일 (0 : 일요일, 6일 : 토요일)
%A Locale 요일 (전체)
%a Locale 요일 (축약형)
%W 연중 몇 번째 주인지 표현 (월요일 시작 기준)
%U 연중 몇 번째 주인지 표현 (일요일 시작 기준)
날짜 표현 %c Locale 날짜와 시간 표현
%x Locale 날짜 표현
%X Locale 시간 표현
문자 표현 %% 리터럴 '%' 문자

위 표를 참고하셔서 원하는 포맷으로 날짜 및 시간 형식 원하는 형식의 문자열로 변경하여 사용하시면 되겠습니다.

 

from datetime import datetime

dt = datetime(2021, 12, 31, 13, 35, 42, 657813)

print(dt)

print("%Y (연도 (전체)) :", dt.strftime("%Y"))
print("%y (연도 (뒤에 2자리만) : ", dt.strftime("%y"))

print("%m (월) : ", dt.strftime("%m"))
print("%B (Locale 월 표현 (전체)) : ", dt.strftime("%B"))
print("%b (Locale 월 표현 (축약형)) : ", dt.strftime("%b"))

print("%d (일) : ", dt.strftime("%d"))
print("%j (연중 일) : ", dt.strftime("%j"))

print("%H (시 (24시간제)) : ", dt.strftime("%H"))
print("%I (시 (12시간제)) : ", dt.strftime("%I"))
print("%p (Locale 오전, 오후) : ", dt.strftime("%p"))

print("%M (분) : ", dt.strftime("%M"))

print("%S (초) : ", dt.strftime("%S"))

print("%f (마이크로초) : ", dt.strftime("%f"))

print("%w (요일 (0 : 일요일, 6일 : 토요일)) : ", dt.strftime("%w"))
print("%A (Locale 요일 (전체)) : ", dt.strftime("%A"))
print("%a (Locale 요일 (축약형)) : ", dt.strftime("%a"))

print("%W (연중 몇 번째 주인지 표현 (월요일 시작 기준)) : ", dt.strftime("%W"))
print("%U (연중 몇 번째 주인지 표현 (일요일 시작 기준)) : ", dt.strftime("%U"))

print("%c (Locale 날짜와 시간 표현) : ", dt.strftime("%c"))
print("%x (Locale 날짜 표현) : ", dt.strftime("%x"))
print("%X (Locale 시간 표현) : ", dt.strftime("%X"))
print("%% (리터럴 '%' 문자) : ", dt.strftime("%%"))

# Output
# 2021-12-31 13:35:42.657813
# %Y (연도 (전체)) : 2021
# %y (연도 (뒤에 2자리만) :  21
# %m (월) :  12
# %B (Locale 월 표현 (전체)) :  December
# %b (Locale 월 표현 (축약형)) :  Dec
# %d (일) :  31
# %j (연중 일) :  365
# %H (시 (24시간제)) :  13
# %I (시 (12시간제)) :  01
# %p (Locale 오전, 오후) :  PM
# %M (분) :  35
# %S (초) :  42
# %f (마이크로초) :  657813
# %w (요일 (0 : 일요일, 6일 : 토요일)) :  5
# %A (Locale 요일 (전체)) :  Friday
# %a (Locale 요일 (축약형)) :  Fri
# %W (연중 몇 번째 주인지 표현 (월요일 시작 기준)) :  52
# %U (연중 몇 번째 주인지 표현 (일요일 시작 기준)) :  52
# %c (Locale 날짜와 시간 표현) :  Fri Dec 31 13:35:42 2021
# %x (Locale 날짜 표현) :  12/31/21
# %X (Locale 시간 표현) :  13:35:42
# %% (리터럴 '%' 문자) :  %


관련 정보

 

Python 날짜, 시간 계산 방법 (오늘, 어제, 한달 전, 일년 전, 내일, 한달 후, 일년 후, 날짜 시간 더

Python 날짜 계산 방법 (오늘, 마이크로초 전, 밀리초 전, 몇초 전, 어제, 일주일 전, 한달 전, 일년 전, 마이크로초 후, 밀리초 후, 몇초 후, 내일, 일주일 후, 한달 후, 일년 후, 날짜 더하기, 날짜 빼

jsikim1.tistory.com

 

Python 날짜 차이 계산, 날짜 비교 방법

Python 날짜 차이 계산, 날짜 비교 방법 Python에서 두 날짜의 차이를 계산하는 방법을 알려드리도록 하겠습니다. from datetime import datetime now = datetime.now() print("현재 :", now) # 현재 : 2021..

jsikim1.tistory.com

 

Python 문자열을 날짜, 시간으로 변환하는 방법 (string to date, string to time) - strptime

Python 문자열을 날짜, 시간으로 변환하는 방법 (string to date, string to time) - strptime Python 에서 문자열을 날짜, 시간으로 변환하는 방법을 알려드리도록 하겠습니다. Python 에서 strp..

jsikim1.tistory.com


 

이상으로 Python에서 날짜 형식과 시간 형식을 원하는 문자열 형식으로 변환하는 방법에 대한 설명을 마치도록 하겠습니다.

 

 

도움이 되셨다면 공감, 댓글 부탁드립니다!

궁금하신 점이나 요청사항은 언제든지 말씀해주세요!

피드백도 언제나 환영입니다!

 

감사합니다.

 

 

참고 차료 : https://docs.python.org/ko/3/library/datetime.html?highlight=strftime#datetime.datetime.strftime 


댓글