2012-07-11 2 views

답변

18

시간대는 몇 년에 걸쳐 변경됩니다. http://www.prokerala.com/travel/timezones/Asia/Kolkata?mode=history에 따르면 해당 영역의 원래 오프셋은 5.88888888889 시간 또는 5 시간 53 분입니다. pytz은 실제 날짜에 영역을 할당하면 적절한 오프셋과 명명법을 사용합니다.

>>> tz = pytz.timezone("Asia/Calcutta") 
>>> tz 
<DstTzInfo 'Asia/Calcutta' HMT+5:53:00 STD> 
>>> tz.localize(datetime.datetime(1901, 7, 10, 12, 0)) 
datetime.datetime(1901, 7, 10, 12, 0, tzinfo=<DstTzInfo 'Asia/Calcutta' HMT+5:53:00 STD>) 
>>> tz.localize(datetime.datetime(2012, 7, 10, 12, 0)) 
datetime.datetime(2012, 7, 10, 12, 0, tzinfo=<DstTzInfo 'Asia/Calcutta' IST+5:30:00 STD>) 
+3

저는 크레이지 오프셋이 현실에 훨씬 가깝다고 생각합니다. Kolkata 경도 : 88.369 deg. 이제 시간 오프셋을 얻으려면 : (88.369/180) x12 = 5.89 대략 5 시간 53 분으로 변환됩니다. 물론, 현실은 모든 사람에게 삶을 어렵게 만들었을 것입니다. 따라서 이제는 반올림 된 상쇄입니다. – tigeronk2

+0

그것은 실제로 법에 의해 제정 된 시간차가 아닙니다. 영역이 적용되는 지역의 [Local Mean Time (LMT)] (https://en.wikipedia.org/wiki/Local_mean_time)을 반영한 것입니다. tz 소스 데이터 [여기] (https://github.com/eggert/tz/blob/2017b/asia#L891)에서 확인할 수 있습니다. –

관련 문제