> 백엔드 개발 > 파이썬 튜토리얼 > Python에서 순진한 날짜/시간 개체를 시간대 인식 개체로 어떻게 변환할 수 있나요?

Python에서 순진한 날짜/시간 개체를 시간대 인식 개체로 어떻게 변환할 수 있나요?

Mary-Kate Olsen
풀어 주다: 2024-11-25 20:18:11
원래의
273명이 탐색했습니다.

How Can I Convert a Naive Datetime Object to a Timezone-Aware Object in Python?

순진한 날짜/시간 객체를 시간대 인식으로 변환

Python에서 날짜/시간 객체는 시간대를 인식하거나 시간대를 인식할 수 있습니다. 시간대 인식 datetime 객체에는 특정 시간대에 대한 참조가 포함되지만, 시간대 기반 datetime 객체는 그렇지 않습니다.

시간대 인식 객체와 시간대 인식 datetime 객체를 비교할 때 다음 사항을 이해하는 것이 중요합니다.

  1. astimezone(): 이 메서드는 표준 시간대를 기본으로 변환하려고 시도합니다. datetime 객체를 시간대 인식 datetime 객체로 변환합니다. 그러나 제공된 코드 조각에서 볼 수 있듯이 순진한 날짜/시간 개체에는 적용할 수 없습니다.
  2. replace(): 바꾸기 메서드는 다음을 포함하여 날짜/시간 개체의 값을 바꾸기 위해 인수를 사용합니다. tzinfo 필드. 이 방법을 사용하면 tzinfo 필드를 원하는 시간대로 설정할 수 있습니다. 그러나 코드 블록에 표시된 것처럼 교체는 datetime 객체가 시간대를 자동으로 인식하도록 만들지 않습니다.

순진한 datetime 객체를 시간대 인식 객체로 올바르게 변환하려면 localize를 사용하세요. () 메서드:

import datetime
import pytz

unaware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0)
aware = pytz.utc.localize(unaware)
로그인 후 복사

localize 메서드는 순진한 날짜/시간 개체와 특정 시간대를 인수로 사용합니다. 원래 날짜/시간 값을 유지하면서 시간대를 인식하는 새로운 날짜/시간 객체를 반환합니다.

UTC와 같이 일광 절약 시간 계산을 포함하지 않는 특정 시간대의 경우 다음 접근 방식을 사용할 수도 있습니다.

import datetime
import pytz

unaware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0)
aware = unaware.replace(tzinfo=pytz.UTC)
로그인 후 복사

이 경우 교체는 tzinfo 필드를 지정된 시간대로 직접 설정하여 시간대를 인식하는 날짜/시간이 됩니다. 개체입니다.

위 내용은 Python에서 순진한 날짜/시간 개체를 시간대 인식 개체로 어떻게 변환할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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