파이썬 | 시간대 변환

| | | | | | | |

Python 날짜 및 시간 요소는 순진하거나 세심할 수 있습니다. datetime 요소에 tzinfo가 있는 경우 이 시점에서 알고 있습니다. 다른 것은 날짜와 시간이 순진합니다. datetime 객체의 시간대를 명확히 하려면 추상 기본 클래스인 tzinfo를 정의하십시오. 어쨌든 Python datetime 라이브러리는 tzinfo에 대한 개념적 기본 클래스를 단순히 특성화하고 tzinfo 생성을 실제로 구현하도록 다른 사람에게 맡깁니다. 여기에서 tz dateutil 모듈이 — OS 시간대 정보에서 업스트림 시간대를 전환하는 데 필요한 모든 것을 제공합니다.

설정:

pip 또는 easy_install dateutil을 사용하여 설치합니다. 운영 체제에 시간대 데이터가 있는지 확인하십시오.

Linux에서는 일반적으로 /usr / share / zoneinfo 에 있으며 Ubuntu 패키지는 tzdata라고 합니다. America / 및 Europe /과 같이 / usr / share / zoneinfo 에 파일 및 디렉토리 수가 있는 경우 계속 진행할 수 있습니다.

UTC 객체 tzinfo 가져오기 — tz.tzutc()

dateutil <코드 클래스 = "키워드"> 가져오기 <코드 클래스 = "일반"> tz

<코드 클래스 = "일반 "> tz.tzutc()

tzutc()

오프셋은 < UTC 날짜/시간 개체가 있는 code>utcoffset() 메서드.


가져오기 날짜/시간

tz.tzutc(). utcoffset (datetime.datetime.utcnow ())

datetime.timedelta (0) 

경로를 전달 다른 시간대에 대한 tzinfo 객체를 가져오려면 gettz() 의 파일 시간대.


tz.gettz( `미국/태평양` )

< /table>

tzfile (`/ usr / share / zoneinfo / 미국 / 태평양`) 

< / p>

tz.gettz ( `유럽/파리` )

tzfile(`/usr/share/zoneinfo/Europe/Paris` )

tz.gettz ( `미국/태평양 ` <코드 클래스 ="일반 ">). utcoffset (datetime.datetime.utcnow ())

datetime.timedelta (-1, 61200) 

변경하려면 UTC에서 UTC로 이외의 시간 및 날짜 요소를 사용하려면 시간대를 기억해야 합니다. 신뢰할 수 있는 시간을 UTC로 변경하려고 하면 ValueError 예외가 발생합니다. 순진한 날짜/시간 시간대를 기억하려면 기본적으로 replace () 전략을 원하는 tzinfo로 호출합니다. datetime 요소에 tzinfo가 있으면 tz.tzutc() 와 함께 astimezone() 메서드를 호출하여 해당 지점에서 UTC를 변경할 수 있습니다.

< / p>

<코드 클래스 = "일반"> abc <코드 클래스 = "키워드"> = <코드 클래스 = "일반"> tz.gettz( `미국/태평양` )

데이터 <코드 클래스 = "키워드" > = <코드 클래스 = "일반"> datetime.datetime ( <코드 클래스 = "값"> 2010 <코드 클래스 = "일반 ">, <코드 클래스 = "값"> 9 <코드 클래스 = "일반">, <코드 클래스 = "값"> 25 <코드 클래스 = "일반">, <코드 클래스 = "값"> 10 <코드 클래스 = "일반">, <코드 클래스 = "값"> 36 <코드 class = "plain">)

dat.tzinfo
dat.astimezone(tz. tzutc ())

추적(최근 호출 마지막): 파일 "/u sr/lib/python2.6/doctest.py", 줄 1228, __run compileflags, 1) test.globs 파일 "", 줄 1, dat.astimezone(tz.tzutc()) ValueError: astimezone() 수 없습니다 순진한 날짜 시간에 적용 

dat.replace (tzinfo = abc)

datetime.datetime (2010, 9, 25, 10, 36, tzinfo = tzfile (`/ usr / share / zoneinfo / 미국 / 태평양`)) 

모든 것은 일 뒤에 있습니다 —

  • tzutc 및 tzfile 요소는 tzinfo의 두 하위 클래스입니다.
  • 모든 것을 고려하면 시간대를 변경하기 위해 올바른 UTC 오프셋을 알고 있습니다(tzutc의 경우 0).
  • tzfile 요소는 기본적인 균형추 정보에 대해 작업 구조 zoneinfo 문서를 스캔하는 방법을 이해합니다.
  • 요소 nta datetime에 대한 replace() 전략은 이름이 — 그것은 자질을 대체합니다.
  • 날짜/시간에 tzinfo가 있는 경우 astimezone() 전략은 UTC 카운터웨이트를 사용하여 시간을 고려한 다음 현재 tzinfo를 새 tzinfo로 대체할 가능성이 큽니다.

코드: tzinfos 키워드 인수를 dateutil 파서에 전달하여 인식할 수 없는 시간대를 감지합니다.


parser.parse( `2010년 8월 4일 수요일 오후 6시 30분(CDT)` ,

퍼지 = )

날짜/시간. 날짜 시간 (2010, 8, 4, 18, 30) 

tzinfos = { `CDT` : tz.gettz ( <코드 클래스 ="string ">` 미국 / 중부` )}

parser.parse( `2010년 8월 4일 수요일 오후 6시 30분(CDT)` ,

< 코드 클래스 ="일반 "> 퍼지 <코드 클래스 ="키워드 "> = <코드 클래스 ="color1 "> 참 <코드 클래스 = "일반">, tzinfos <코드 클래스 = "키워드"> = <코드 클래스 = "일반"> tzinfos)

datetime.datetime (2010, 8, 4, 18, 30, tzinfo = tzfile (`/ usr / share / zoneinfo / US / Central`)) 

Shop

Learn programming in R: courses

$

Best Python online courses for 2022

$

Best laptop for Fortnite

$

Best laptop for Excel

$

Best laptop for Solidworks

$

Best laptop for Roblox

$

Best computer for crypto mining

$

Best laptop for Sims 4

$

Latest questions

NUMPYNUMPY

psycopg2: insert multiple rows with one query

12 answers

NUMPYNUMPY

How to convert Nonetype to int or string?

12 answers

NUMPYNUMPY

How to specify multiple return types using type-hints

12 answers

NUMPYNUMPY

Javascript Error: IPython is not defined in JupyterLab

12 answers


Wiki

Python OpenCV | cv2.putText () method

numpy.arctan2 () in Python

Python | os.path.realpath () method

Python OpenCV | cv2.circle () method

Python OpenCV cv2.cvtColor () method

Python - Move item to the end of the list

time.perf_counter () function in Python

Check if one list is a subset of another in Python

Python os.path.join () method