표준 라이브러리를 사용하여 UTC 날짜 시간을 로컬 날짜 시간으로 변환
UTC 날짜 시간 인스턴스를 로컬 날짜 시간으로 변환하는 작업은 다음의 표준 라이브러리를 사용하여 수행할 수 있습니다. 파이썬. 일반적인 해결 방법은 astimezone 메서드를 사용하는 것이지만 이를 위해서는 시간대 개체를 제공해야 합니다. 다음은 표준 라이브러리만 사용하는 대체 접근 방식입니다.
Python 3.3:
<code class="python">from datetime import datetime, timezone def utc_to_local(utc_dt): return utc_dt.replace(tzinfo=timezone.utc).astimezone(tz=None)</code>
Python 2/3:
<code class="python">import calendar from datetime import datetime, timedelta def utc_to_local(utc_dt): timestamp = calendar.timegm(utc_dt.timetuple()) local_dt = datetime.fromtimestamp(timestamp) assert utc_dt.resolution >= timedelta(microseconds=1) return local_dt.replace(microsecond=utc_dt.microsecond)</code>
pytz 사용(Python 2/3):
<code class="python">import pytz local_tz = pytz.timezone('Europe/Moscow') # Provide your local timezone name def utc_to_local(utc_dt): local_dt = utc_dt.replace(tzinfo=pytz.utc).astimezone(local_tz) return local_tz.normalize(local_dt)</code>
예:
<code class="python">def aslocaltimestr(utc_dt): return utc_to_local(utc_dt).strftime('%Y-%m-%d %H:%M:%S.%f %Z%z') utc_dt = datetime(2010, 6, 6, 17, 29, 7, 730000) print(aslocaltimestr(utc_dt))</code>
이렇게 하면 로컬이 인쇄됩니다. 기본 시간대를 기반으로 한 날짜/시간 문자열입니다.
참고: 기본 시간대는 항상 신뢰할 수 있는 것은 아니며 시스템 설정에 따라 달라질 수 있습니다. 보다 안정적인 크로스 플랫폼 결과를 얻으려면 현지 시간대를 명시적으로 지정하는 것이 좋습니다.
위 내용은 표준 라이브러리를 사용하여 Python에서 UTC 날짜 시간을 현지 날짜 시간으로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!