>  기사  >  백엔드 개발  >  시간대 오프셋이 있는 타임스탬프를 Python datetime 객체로 변환하는 방법은 무엇입니까?

시간대 오프셋이 있는 타임스탬프를 Python datetime 객체로 변환하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-27 05:48:09423검색

How to Convert Timestamps with Timezone Offsets to Python datetime Objects?

strptime을 사용하여 오프셋이 있는 타임스탬프를 날짜/시간 객체로 변환

"YYYY-MM-DDTHH:MM:SS-hh:mm" 형식의 타임스탬프를 날짜/시간 객체로 변환 Python에서 strptime 메서드를 사용하는 것은 시간 오프셋으로 인해 어려울 수 있습니다.

제공된 예에서 strptime은 "%Y-%m-%dT%H:%M:%S-%z"를 사용하여 오프셋 "-07:00"이 있는 타임스탬프를 구문 분석하지 못합니다. " 형식입니다. 이는 strptime이 Python 2에서 시간대에 대한 '%z' 지시문을 기본적으로 지원하지 않기 때문입니다.

해결 방법 옵션:

1. 시간대 무시:

시간대 정보가 중요하지 않은 경우 문자열을 오프셋까지 구문 분석하여 무시할 수 있습니다.

time_str = "2012-07-24T23:14:29-07:00"
time_obj = datetime.datetime.strptime(time_str[:19], '%Y-%m-%dT%H:%M:%S')

2. dateutil 모듈 사용:

또는 dateutil 모듈은 시간대를 지원하는 보다 강력한 구문 분석 기능을 제공합니다.

from dateutil.parser import parse
time_obj = parse(time_str)

Python 3 지원:

Python 3.2 이상에서는 시간대 처리 지원이 향상되었습니다. 오프셋에서 마지막 ":"을 제거하고 "-"를 " ":

time_str = "2012-07-24T23:14:29-07:00"
time_obj = datetime.datetime.strptime(''.join(time_str.rsplit(':', 1)), '%Y-%m-%dT%H:%M:%S%z')

이렇게 하면 타임스탬프가 올바르게 구문 분석되고 지정된 시간대 오프셋을 사용하여 날짜/시간 개체가 생성됩니다.

위 내용은 시간대 오프셋이 있는 타임스탬프를 Python datetime 객체로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.