logo

Python DateTime - strptime() 함수

문자열 시간() 문자열 형식의 타임스탬프를 날짜-시간 개체로 형식화하는 데 사용되는 DateTime에서 사용할 수 있는 또 다른 방법입니다.

통사론 : datetime.strptime(time_data, format_data)



매개변수:

  • time_data는 문자열 형식으로 존재하는 시간입니다.
  • format_data는 이 함수를 사용하여 time_data에서 변환된 날짜/시간 형식으로 존재하는 데이터입니다.

strptime()은 어떻게 작동하나요?

이 함수는 시간이 지정된 문자열과 형식 코드라는 두 개의 인수를 사용하여 문자열을 변경합니다. 문자열은 아래 제공된 코드 목록에 따라 DateTime 객체로 변경됩니다.

형식 코드



형식 코드 의미
%ㅏ 축약된 요일 이름 태양, 나의
%ㅏ 전체 요일 이름 일요일 월요일
%안에 평일을 십진수로 표시 0…6
%디 제로 패딩된 십진수로 표시된 날짜 01, 02
%-디 월의 일을 십진수로 표시 1, 2..
%비 약식 월 이름 1월, 2월
%중 0으로 채워진 십진수로 된 월 01, 02
%-중 월을 십진수로 표시 1, 2
%비 전체 월 이름 1월, 2월
%그리고 세기가 없는 연도를 제로 패딩된 십진수로 표현 99.00
%-그리고 세기를 제외한 연도를 십진수로 표현 0.99
%그리고 십진수로 세기를 포함한 연도 2000년, 1999년
%시간 시간(24시간제)을 제로 패딩된 십진수로 표현 01, 23
%-시간 시간(24시간제)을 십진수로 표시 1, 23
%나 시(12시간제)를 제로 패딩된 십진수로 표현 01, 12
%-나 시(12시간제)를 십진수로 표시 1, 12
%피 로케일의 AM 또는 PM 오전 오후
%중 제로 패딩된 십진수 형태의 분 01, 59
%-중 십진수로 표현된 분 1, 59
%에스 두 번째는 제로 패딩된 십진수입니다. 01, 59
%-에스 초를 십진수로 표현 1, 59
%에프 십진수로 마이크로초, 왼쪽에 0 패딩됨 000000, 999999
%와 함께 +HHMM 또는 -HHMM 형식의 UTC 오프셋
%와 함께 시간대 이름
%제이 올해의 일을 0으로 채워진 십진수로 표현 001, 365
%-제이 올해의 일을 십진수로 표시 1, 365
%안에 해당 연도의 주 수(일요일이 첫 번째임) 0, 6
%안에 올해의 주 수 00, 53
%씨 로케일의 적절한 날짜 및 시간 표현 2013년 9월 30일 월요일 07:06:05
%엑스 로케일의 적절한 날짜 표현 98년 11월 30일
%엑스 로케일의 적절한 시간 표현 10:03:43
%% 리터럴 '%' 문자 %

예시 1: 날짜/시간을 읽고 strptime을 사용하여 모든 시간 데이터를 가져오는 Python 프로그램입니다. 여기서는 문자열 형식의 시간 데이터를 가져와 시, 분, 초, 밀리초를 추출하겠습니다.

파이썬3






# import datetime module from datetime> from> datetime>import> datetime> # consider the time stamp in string format> # DD/MM/YY H:M:S.micros> time_data>=> '25/05/99 02:35:5.523'> # format the string in the given format :> # day/month/year hours/minutes/seconds-micro> # seconds> format_data>=> '%d/%m/%y %H:%M:%S.%f'> # Using strptime with datetime we will format> # string into datetime> date>=> datetime.strptime(time_data, format_data)> # display milli second> print>(date.microsecond)> # display hour> print>(date.hour)> # display minute> print>(date.minute)> # display second> print>(date.second)> # display date> print>(date)>

>

쉐타 티와리 배우
>

산출:

523000

2

35

5

1999-05-25 02:35:05.523000

예시 2: strptime을 사용하는 Python 코드입니다. 여기서는 문자열 형식의 시간 데이터를 가져와 %d/%m/%y %H:%M:%S.%f 형식의 타임스탬프를 추출하겠습니다.

파이썬3




# import datetime module from datetime> from> datetime>import> datetime> # consider the time stamps from a list in string> # format DD/MM/YY H:M:S.micros> time_data>=> [>'25/05/99 02:35:8.023'>,>'26/05/99 12:45:0.003'>,> >'27/05/99 07:35:5.523'>,>'28/05/99 05:15:55.523'>]> # format the string in the given format : day/month/year> # hours/minutes/seconds-micro seconds> format_data>=> '%d/%m/%y %H:%M:%S.%f'> # Using strptime with datetime we will format string> # into datetime> for> i>in> time_data:> >print>(datetime.strptime(i, format_data))>

>

>

산출:

1999-05-25 02:35:08.023000

1999-05-26 12:45:00.003000

1999-05-27 07:35:05.523000

1999-05-28 05:15:55.523000

strptime() 자체를 사용하면 모든 날짜의 구조를 따르는 시간을 얻을 수 있습니다.

통사론 :

time.strptime(타임스탬프, '%d/%m/%y %H:%M:%S')

여기서 타임스탬프에는 시간과 날짜가 포함됩니다.

: 구조에서 시간을 얻는 Python 코드:

파이썬3




#import time> import> time> # get data of 4 th april 2021 at time 9 pm> print>(time.strptime(>'04/04/21 09:31:22'>,>'%d/%m/%y %H:%M:%S'>))> # get data of 5 th april 2021 at time 9 pm> print>(time.strptime(>'05/04/21 09:00:42'>,>'%d/%m/%y %H:%M:%S'>))> # get data of 6 th april 2021 at time 9 pm> print>(time.strptime(>'06/04/21 09:11:42'>,>'%d/%m/%y %H:%M:%S'>))> # get data of 7 th april 2021 at time 9 pm> print>(time.strptime(>'07/04/21 09:41:12'>,>'%d/%m/%y %H:%M:%S'>))>

>

>

산출:

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=4, tm_hour=9, tm_min=31, tm_sec=22, tm_wday=6, tm_yday=94, tm_isdst=-1)

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=5, tm_hour=9, tm_min=0, tm_sec=42, tm_wday=0, tm_yday=95, tm_isdst=-1)

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=6, tm_hour=9, tm_min=11, tm_sec=42, tm_wday=1, tm_yday=96, tm_isdst=-1)

time.struct_time(tm_year=2021, tm_mon=4, tm_mday=7, tm_hour=9, tm_min=41, tm_sec=12, tm_wday=2, tm_yday=97, tm_isdst=-1)

yyyy-mm-dd 날짜/시간 형식으로 문자열 날짜/시간을 가져올 수도 있습니다. yyyy-mm-dd는 연월일을 나타냅니다. strptime() 함수를 사용하여 문자열 형식을 DateTime으로 변환할 수 있습니다. 문자열을 날짜/시간으로 가져오기 위해 '%Y/%m/%d' 형식을 사용합니다.

통사론: datetime.datetime.strptime(입력,형식)

매개변수:

  • 입력은 날짜/시간 문자열입니다.
  • 형식은 'yyyy-mm-dd' 형식입니다.
  • datetime은 모듈입니다

이를 위해 먼저 모듈을 가져오고 입력 DateTime 문자열이 제공됩니다. 이제 strptime을 사용하여 필요한 형식을 얻고 date() 함수를 사용하여 DateTime에서 날짜를 가져옵니다.

실시예 1 : 문자열 날짜/시간 형식을 날짜/시간으로 변환하는 Python 프로그램

파이썬3




# import the datetime module> import> datetime> # datetime in string format for may 25 1999> input> => '2021/05/25'> # format> format> => '%Y/%m/%d'> # convert from string format to datetime format> datetime>=> datetime.datetime.strptime(>input>,>format>)> # get the date from the datetime using date()> # function> print>(datetime.date())>

>

>

산출:

2021-05-25

예시 2: 문자열 날짜/시간 목록을 날짜/시간으로 변환

파이썬3




# import the datetime module> import> datetime> # datetime in string format for list of dates> input> => [>'2021/05/25'>,>'2020/05/25'>,>'2019/02/15'>,>'1999/02/4'>]> # format> format> => '%Y/%m/%d'> for> i>in> input>:> > ># convert from string format to datetime format> ># and get the date> >print>(datetime.datetime.strptime(i,>format>).date())>

>

>

산출:

2021-05-25

2020-05-25

2019-02-15

1999-02-04

DateTime을 다음과 같이 표시할 수도 있습니다. %d/%m/%Y %H:%M:%S 체재. 이를 위해 날짜-월-년 시:분,초 형식으로 데이터를 가져옵니다. 따라서 우리는 입력 날짜/시간 문자열을 가져와서 다음 형식을 얻어야 합니다.

통사론: datetime.strptime(input_date, %d/%m/%Y %H:%M:%S)

매개변수:

  • datetime은 모듈입니다
  • input_date는 문자열 날짜/시간 형식입니다.
  • strptime은 input_date 문자열을 datetime으로 변환하는 데 사용됩니다.

예시 3: 문자열 datetime을 %d/%m/%Y %H:%M:%S 형식으로 가져오는 Python 프로그램

파이썬3




#import datetime> from> datetime>import> datetime> # consider the datetime string in dd/mm/yyyy> # hh:mm:ss format> date>=> '25/05/2021 02:35:15'> # convert string datetime to dd/mm/yyyy hh:mm:ss> # format> datetime_date>=> datetime.strptime(date,>'%d/%m/%Y %H:%M:%S'>)> print>(datetime_date)>

>

>

산출:

2021-05-25 02:35:15