> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 시간 오프셋이 있는 타임스탬프를 날짜/시간 객체로 변환하려면 어떻게 해야 합니까?

Python에서 시간 오프셋이 있는 타임스탬프를 날짜/시간 객체로 변환하려면 어떻게 해야 합니까?

Barbara Streisand
풀어 주다: 2024-11-26 10:03:10
원래의
959명이 탐색했습니다.

How Can I Convert Timestamps with Time Offsets to Datetime Objects in Python?

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

Python에서 strptime() 메서드는 타임스탬프 문자열을 날짜/시간 객체로 변환하는 실행 가능한 옵션 역할을 합니다. 그러나 시간 오프셋을 처리하려고 할 때 오류가 발생하면 종종 좌절감을 느낄 수 있습니다. 이 문서의 목적은 이 특정 문제를 조명하고 실행 가능한 솔루션을 제공하는 것입니다.

시간 오프셋이 포함된 타임스탬프를 처리할 때 strptime()의 형식 문자열 내에 %z를 사용하면 항상 원하는 결과를 얻지 못할 수도 있습니다. 이는 기본 time.strptime() 함수가 이 특정 형식 코드에 대한 지원이 부족하다는 사실에서 비롯됩니다. 이 문제를 극복하려면 대체 접근 방식을 고려해 보십시오.

  1. 파싱 중 시간대 무시:
    애플리케이션에 시간대 정보가 중요하지 않은 경우 타임스탬프를 구문 분석하세요. 오프셋을 고려하지 않은 문자열은 간단한 솔루션입니다. 이를 달성하려면 strptime()을 호출하기 전에 시간 문자열을 잘라서 오프셋을 제거하세요.

    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.2 이상을 사용하는 경우 %z를 strptime()과 함께 사용할 수 있습니다. 입력의 콜론이 제거되고 %z 앞의 하이픈도 제거됩니다. 제거됨:

    datetime.datetime.strptime(''.join(time_str.rsplit(':', 1)), '%Y-%m-%dT%H:%M:%S%z')
    로그인 후 복사

이러한 해결 방법을 활용하면 Python에서 시간 오프셋이 있는 타임스탬프를 날짜/시간 객체로 효과적으로 변환할 수 있습니다. 효율성을 우선시하든 시간대 정보 보존을 요구하든 이러한 솔루션을 사용하면 원하는 결과를 얻을 수 있습니다.

위 내용은 Python에서 시간 오프셋이 있는 타임스탬프를 날짜/시간 객체로 변환하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿