Programming/Python

파이썬 날짜 변환하기

remake 2023. 10. 11. 21:28

파이썬에서 날짜는 datetime 함수로 변환할 수 있습니다.

 

 Datetime

datetime 오브젝트는 날짜(년,월,일)과 시각(시, 분, 초 마이크로초)  정보를 가진 오브젝트이다. 이러한 정보는 속성 year, month, day, hour, minute, second, microsecond 을 사용할 수 있다.

 

dt_now = datetime.datetime.now()
print(dt_now)

 

Date


  date 오브젝트는 날짜(년, 월, 일) 의 정보를 가진 오브젝트이며 속성으로는 year, month, day가 있습니다.


d_today = datetime.date.today()
print(d_today)

그리고 크롤링을 한다면 날짜 형태가 다 달라서 고생하는데 이 때 사용하는 함수 두개가 있다.

 

날짜와 시간(datetime)을 문자열로 출력하려면 strftime
날짜와 시간 형식의 문자열을 datetime으로 변환하려면 strptime을 사용하면 됩니다.

strftime(): 

날짜, 시간 데이터에서 문자열 데이터로 변환하는 함수입니다.

 



strptime():

 

문자열 데이터에서 날짜, 시간 데이터로  변환하는 함수입니다.

지시자 별로 뜻은 아래와 같스니다.

       
지시자 의미 노트
%a 요일을 로케일의 축약된 이름으로. Sun, Mon, …, Sat (en_US);
So, Mo, …, Sa (de_DE)
-1
%A 요일을 로케일의 전체 이름으로. Sunday, Monday, …, Saturday (en_US);
Sonntag, Montag, …, Samstag (de_DE)
-1
%w 요일을 10진수로, 0은 일요일이고 6은 토요일입니다. 0, 1, …, 6  
%d 월중 일(day of the month)을 0으로 채워진 10진수로. 01, 02, …, 31 -9
%b 월을 로케일의 축약된 이름으로. Jan, Feb, …, Dec (en_US);
Jan, Feb, …, Dez (de_DE)
-1
%B 월을 로케일의 전체 이름으로. January, February, …, December (en_US);
Januar, Februar, …, Dezember (de_DE)
-1
%m 월을 0으로 채워진 10진수로. 01, 02, …, 12 -9
%y 세기가 없는 해(year)를 0으로 채워진 10진수로. 00, 01, …, 99 -9
%Y 세기가 있는 해(year)를 10진수로. 0001, 0002, …, 2013, 2014, …, 9998, 9999 -2
%H 시(24시간제)를 0으로 채워진 십진수로. 00, 01, …, 23 -9
%I 시(12시간제)를 0으로 채워진 십진수로. 01, 02, …, 12 -9
%p 로케일의 오전이나 오후에 해당하는 것. AM, PM (en_US);
am, pm (de_DE)
(1), (3)
%M 분을 0으로 채워진 십진수로. 00, 01, …, 59 -9
%S 초를 0으로 채워진 10진수로. 00, 01, …, 59 (4), (9)
%f Microsecond as a decimal number, zero-padded to 6 digits. 000000, 000001, …, 999999 -5
%z ±HHMM[SS[.ffffff]] 형태의 UTC 오프셋 (객체가 나이브하면 빈 문자열). (비어 있음), +0000, -0400, +1030, +063415, -030712.345216 -6
%Z 시간대 이름 (객체가 나이브하면 빈 문자열). (비어 있음), UTC, GMT -6
%j 연중 일(day of the year)을 0으로 채워진 십진수로. 001, 002, …, 366 -9
%U Week number of the year (Sunday as the first day of the week) as a zero-padded decimal number. All days in a new year preceding the first Sunday are considered to be in week 0. 00, 01, …, 53 (7), (9)
%W Week number of the year (Monday as the first day of the week) as a zero-padded decimal number. All days in a new year preceding the first Monday are considered to be in week 0. 00, 01, …, 53 (7), (9)
%c 로케일의 적절한 날짜와 시간 표현. Tue Aug 16 21:30:00 1988 (en_US);
Di 16 Aug 21:30:00 1988 (de_DE)
-1
%x 로케일의 적절한 날짜 표현. 08/16/88 (None);
08/16/1988 (en_US);
16.08.1988 (de_DE)
-1
%X 로케일의 적절한 시간 표현. 21:30:00 (en_US);
21:30:00 (de_DE)
-1
%% 리터럴 '%' 문자. %  
       

 

https://www.programiz.com/python-programming/datetime/strptime

 

Python strptime() - string to datetime object

The strptime() method creates a datetime object from the given string. Note: You cannot create datetime object from every string. The string needs to be in a certain format. Example 1: string to datetime object from datetime import datetime date_string =

www.programiz.com