Computer >> 컴퓨터 >  >> 프로그램 작성 >> Python

Python에서 calendar.timegm() 대 time.mktime()을 비교하는 방법은 무엇입니까?

<시간/>

명시적으로 언급되지 않은 경우 Python의 날짜 시간 함수/모듈은 모든 것을 현지 시간대로 가정합니다.

time.mktime()은 전달된 튜플이 현지 시간에 있다고 가정하고 calendar.timegm()은 GMT/UTC에 있다고 가정합니다.

해석에 따라 튜플은 다른 시간을 나타내므로 함수는 다른 값을 반환합니다(에포크가 UTC 기반이므로 초).

값의 차이는 현지 시간대의 시간대 오프셋과 같아야 합니다.

예시

import calendar
import time
from datetime import datetime
dt = datetime(2017, 12, 31)
print(time.mktime(dt.timetuple()))
print(calendar.timegm(dt.timetuple()))

출력

이것은 출력을 제공합니다 -

1514658600.0
1514678400