source

strft time을 사용하여 기간(AM/PM)을 어떻게 계산할 수 있습니까?

factcode 2023. 7. 8. 11:14
반응형

strft time을 사용하여 기간(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)

왜 그러고 있어?Python은 날짜를 구문 분석할 때 기간 지정자를 무시합니까 아니면 제가 바보 같은 짓을 하고 있습니까?

Python 문서는 다음과 같이 말합니다.

strptime() 함수와 함께 사용되는 경우 디렉티브는 시간을 구문 분석하는 데 사용되는 경우에만 출력 시간 필드에 영향을 줍니다.

아니나다를까, 당신의 것을 바꾸는 것.%H로.%I효과가 있습니다.

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

형식이 사용 중입니다.%H대신에%I.부터%H"24시간" 형식이고, 그것은 단지 그것을 버리는 것일 가능성이 높습니다.%p정보.그것은 당신이 그것을 바꾸어도 잘 작동합니다.%H로.%I.

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

%H(24시간 시계의 시간)를 %I(12시간 시계의 시간)로 교체해 보십시오.

교체 시도%I와 함께%H.

from datetime import datetime
print(datetime.today().strftime("%H:%M %p")) # 15:31 AM

된다

from datetime import datetime
print(datetime.today().strftime("%I:%M %p")) # 03:31 AM

언급URL : https://stackoverflow.com/questions/1759455/how-can-i-account-for-period-am-pm-using-strftime

반응형