파이썬에서 문자열을 날짜 / 시간으로 변환하는 방법

  1. 문자열을 datetime 으로 변환하는 datetime.strptime()
  2. 파이썬 datetime.strptime()예제

이 튜토리얼은 파이썬에서 stringdatetime 으로 변환하는 방법을 소개하고 인기있는 datetime string 형식을 다루는 예제 코드를 나열합니다.

문자열을 datetime 으로 변환하는 datetime.strptime()

이전 튜토리얼에서, 우리는 datetime.strftime()메소드를 사용하여 날짜 형식을 문자열 형식으로 얻는 방법. 우리는 datetime.strptime()메소드를 사용하여 revate 변환을 수행하여 datetime 객체를 얻습니다. 이 두 가지 방법에서 fp 는 각각 formatparse 를 의미합니다.

datetime.strptime()메소드는 주어진 datetime 형식으로 입력 문자열을 파싱하고 datetime 객체를 반환합니다.

strptime()메소드를 사용하는 기본 예제는 다음과 같습니다.

from datetime import datetime

datetime.strptime("2018-01-31", "%Y-%m-%d")

결과는

datetime.datetime(2018, 1, 31, 0, 0)

문자열 형식 코드의 지시문은 참조 용으로 여기에 나열되어 있습니다.

지령 의미
%a 로케일의 약칭으로 평일. 일요일, 월,…, 토 (en_US); 따라서 Mo,…, Sa (de_DE)
%A 로케일의 전체 이름으로 평일. 일요일, 월요일,…, 토요일 (en_US); Sonntag, Montag,…, Samstag (de_DE)
%w 평일을 10 진수로 표시합니다. 여기서 0은 일요일이고 6은 토요일입니다. 0, 1,…, 6
%d 0으로 채워진 10 진수로 표시되는 요일입니다. 01, 02,…, 31
%b 로캘의 약식 이름 인 월입니다. 1 월, 2 월,…, 12 월 (en_US); 1 월, 2 월,…, Dez (de_DE)
%B 로케일의 전체 이름으로 월. 1 월, 2 월,…, 12 월 (en_US); 1 월, 2 월,…, Dezember (de_DE)
%m 0으로 채워진 10 진수로 된 월입니다. 01, 02,…, 12
%y 세기가없는 연도는 0으로 채워진 10 진수입니다. 00, 01,…, 99
%Y 십진수로 세기를 가진 년. 0001, 0002,…, 2013, 2014,…, 9998, 9999
%H 0으로 채워진 10 진수로 표시되는 시간 (24 시간제)입니다. 00, 01,…, 23
%I 0으로 채워진 10 진수로 표시되는 시간 (12 시간제)입니다. 01, 02,…, 12
%p 로케일은 AM 또는 PM 에 해당합니다. 오전, 오후 (en_US), 오전, 오후 (de_DE)
%M 0으로 채워진 10 진수로 분. 00, 01,…, 59
%S 0은 0으로 채워진 10 진수입니다. 00, 01,…, 59
%f 왼쪽에 0으로 채워진 10 진수의 마이크로 초입니다. 000000, 000001,…, 999999
%z ± HHMM [SS] 형식의 UTC 오프셋 (객체가 순진한 경우 빈 문자열). (빈), +0000, -0400, +1030
%Z 시간대 이름 (객체가 순진한 경우 빈 문자열). (빈), UTC, EST, CST
%j 0으로 채워진 10 진수로 표시되는 연도입니다. 001, 002,…, 366
%U 0으로 채워진 10 진수로 표시되는 연중 주 번호 (일요일의 첫 번째 요일)입니다. 첫 번째 일요일 이전의 새해의 모든 날은 0 주로 간주됩니다. 00, 01,…, 53
%W 연도의 주 번호 (월요일의 첫 번째 요일)를 10 진수로 나타냅니다. 첫 번째 월요일 이전의 새해의 모든 날은 0 주로 간주됩니다. 00, 01,…, 53
%c 로케일의 적절한 날짜 및 시간 표현 화요일 1988 년 8 월 16 일 21:30:00 (en_US); 1988 년 8 월 16 일 21:30:00 (de_DE)
%x 로케일의 적절한 날짜 표현. 08/16/88 (없음); 08/16/1988 (ko_KR); 16.08.1988 (de_DE)
%X 로케일의 적절한 시간 표현. 21:30:00 (ko_KR); 21 : 30 : 00 (de_DE)
%% 리터럴'%'문자. %

파이썬 datetime.strptime()예제

7-May-2013 datetime 형식

from datetime import datetime

dateString = "7-May-2018"
dateFormatter = "%u-%b-%Y"
datetime.strptime(dateString, dateFormatter)

산출:

datetime.datetime(2013, 5, 1, 0, 0)

31/12/2018 datetime 형식

from datetime import datetime

dateString = "31/12/2013"
dateFormatter = "%d/%m/%Y"
datetime.strptime(dateString, dateFormatter)

산출:

datetime.datetime(2013, 12, 31, 0, 0)

Mon, July 16 2018 datetime 형식

from datetime import datetime

dateString = "31/12/2013"
dateFormatter = "%d/%m/%Y"
datetime.strptime(dateString, dateFormatter)

산출:

datetime.datetime(2018, 7, 16, 0, 0)

Monday, July 16, 2018 20:01:56 datetime 형식

from datetime import datetime

dateString = "Monday, July 16, 2018 20:01:56"
dateFormatter = "%A, %B %d, %Y %H:%M:%S"
datetime.strptime(dateString, dateFormatter)

산출:

datetime.datetime(2018, 7, 16, 20, 1, 56)

관련 문장 - Python String

  • 파이썬에서 정수를 문자열로 변환하는 방법
  • 파이썬에서 문자열을 바이트로 변환하는 방법
  • 관련 문장 - Python datetime

  • Python에서 문자열의 여러 문자를 바꾸는 방법