[python] strftime을 사용하여 기간 (AM / PM)을 어떻게 설명 할 수 있습니까?

특히 나는 이것을 단순화시키는 코드를 가지고있다 :

from datetime import datetime
date_string = '2009-11-29 03:17 PM'
format = '%Y-%m-%d %H:%M %p'
my_date = datetime.strptime(date_string, format)

# This prints '2009-11-29 03:17 AM'
print my_date.strftime(format)

무엇을 제공합니까? 파이썬은 날짜를 구문 분석 할 때 기간 지정자를 무시합니까? 아니면 바보 같은 일을하고 있습니까?



답변

파이썬 time.strftime문서는 말합니다 :

strptime () 함수와 함께 사용될 때 %p, %I지시문이 시간을 구문 분석하는 데 사용되는 경우 지시문은 출력 시간 필드에만 영향을줍니다 .

확실하게, 작동 %H하도록 변경하십시오 %I.


답변

format = '%Y-%m-%d %H:%M %p'

형식이 %H대신 사용 중 %I입니다. 이후 %H은 “24 시간”형식, 그것은 가능성이 그냥 폐기있어 %p정보를. 로 변경하면 제대로 작동 %H합니다 %I.


답변

당신은 사용 %H(24 시간 형식) 대신 %I(12 시간 형식).


답변

% H (24 시간 시계 시간)를 % I (12 시간 시계 시간)로 바꾸시겠습니까?


답변