如果未明确说明,则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