>백엔드 개발 >파이썬 튜토리얼 >Python에서 Naive Datetime 객체를 Aware Datetime 객체로 변환하는 방법은 무엇입니까?

Python에서 Naive Datetime 객체를 Aware Datetime 객체로 변환하는 방법은 무엇입니까?

DDD
DDD원래의
2024-11-24 22:59:111059검색

How to Convert a Naive Datetime Object to an Aware Datetime Object in Python?

Datetime 객체를 인식하는 방법(순진 아님)

Python에서 datetime 객체는 naive이거나 인식할 수 있습니다. Naive 개체에는 연결된 시간대가 없지만 Aware 개체에는 시간대가 있습니다. 순진한 객체는 인식된 객체와 비교할 수 없기 때문에 날짜/시간 객체를 비교할 때 문제가 발생할 수 있습니다.

순진한 날짜/시간 객체를 인식하게 만드는 몇 가지 방법이 있습니다. 한 가지 방법은 localize 메서드를 사용하는 것입니다. localize 메소드는 pytz 시간대 개체를 인수로 사용하고 지정된 시간대를 인식하는 새 날짜/시간 개체를 반환합니다.

예:

import datetime
import pytz

unaware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0)
aware = pytz.utc.localize(unaware)

이렇게 하면 새 날짜/시간 개체가 생성됩니다. 이는 UTC 시간대를 인식합니다.

순진한 날짜/시간 객체를 인식하도록 만드는 또 다른 방법은 교체 방법을 사용하는 것입니다. 교체 메소드는 tzinfo 속성에 대한 하나를 포함하여 여러 키워드 인수를 사용합니다. tzinfo 속성을 pytz 시간대 객체로 설정하여 datetime 객체가 인식되도록 할 수 있습니다.

예:

import datetime
import pytz

unaware = datetime.datetime(2011, 8, 15, 8, 15, 12, 0)
aware = unaware.replace(tzinfo=pytz.UTC)

이렇게 하면 UTC를 인식하는 새로운 datetime 객체도 생성됩니다. timezone.

날짜/시간 객체가 인식되면 다른 인식 날짜/시간 개체와 비교할 수 있습니다. 예:

import datetime
import pytz

aware_1 = pytz.utc.localize(datetime.datetime(2011, 8, 15, 8, 15, 12, 0))
aware_2 = pytz.utc.localize(datetime.datetime(2011, 8, 15, 8, 15, 12, 0))

if aware_1 == aware_2:
    print("The two datetime objects are equal.")

이렇게 하면 "두 날짜/시간 개체가 동일합니다."가 인쇄됩니다.

위 내용은 Python에서 Naive Datetime 객체를 Aware Datetime 객체로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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