bskyvision RSS 태그 관리 글쓰기 방명록
2021-04-24 09:22:37
728x90

만약 4/21/2021이라는 문자열을 April 21, 2021 또는 2021-04-21로 변환하고 싶다면 어떻게 해야할까요? 여러가지 방법이 있겠지만, 저는 datetime 모듈을 활용해서 해결해보겠습니다. 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
import datetime
 
date = '4/21/2021'
print(type(date), date)
 
date_temp = datetime.datetime.strptime(date, "%m/%d/%Y")
print(type(date_temp), date_temp)
 
date1 = date_temp.strftime("%Y-%m-%d")
print(type(date1), date1)
 
date2 = date_temp.strftime("%B %d, %Y")
print(type(date2), date2)
cs

 

위 코드를 실행하면 다음과 같은 결과가 출력됩니다. 

 

 

이해를 돕기 위해 데이터의 타입도 함께 출력되게 했습니다. 

 

위 예제에서 중요한 함수는 두 개입니다. 하나는 strptime() 함수고, 또 다른 하나는 strftime() 함수입니다.

 

첫번째 함수 strptime()의 역할은 문자열의 각 위치가 무엇을 의미하는지 알려줍니다.

 

"이 위치는 월, 이 위치는 일, 이 위치는 년이야."  

 

두번째 함수 strftime()의 역할은 원하는 형식(format)으로 날짜를 표현해줍니다. 

 

"이제 년, 월, 일이 뭔지 알았지? 날짜를 %Y-%m-%d 형식 또는 %B %d, %Y로 바꿔줘."

 

참고로 %Y, %m, %d, %B 등은 다음의 의미를 갖습니다. 1988년 2월 11일을 예로 들어 설명하겠습니다.

 

%Y : 1988

%y : 88

%B : February

%b : Feb

%m : 02

%d : 11

댓글

방문해주신 모든 분들을 환영합니다.

* 글을 읽던 중에 궁금했던 부분은 질문해주세요.

* 칭찬, 지적, 의문, 격려, 감사표현 등을 남겨주세요.

* 최대한 답변 드리도록 노력하겠습니다.

* 욕설과 광고를 담은 댓글은 가차없이 삭제합니다.


guest@이름 ~$
guest@패스워드 ~$
guest@홈페이지주소작성 ~$

guest@댓글작성 ~$




bskyvision. Designed by bskyvision.