Skip to main content
 首页 » 编程设计

python之不同位置的 mktime 问题

2025年05月04日14lvdongjie

我在 python 中遇到日期问题。我在不同的地方使用 mktime 得到了不同的结果。

在我的本地服务器上,如果我尝试:

>>> from datetime import date 
>>> from time import mktime 
>>> mydate = date(2008,1,1) 
>>> mktime(mydate.timetuple()) 
1199156400.0 
>>> mydate2 = date(1998,1,1) 
>>> mktime(mydate2.timetuple()) 
883620000.0 

但如果我在另一台服务器上尝试,我会得到:

>>> mydate = date(2008,1,1) 
>>> mktime(mydate.timetuple()) 
1199152800.0 
>>> mydate2 = date(1998,1,1) 
>>> mktime(mydate2.timetuple()) 
883620000.0 

请注意,在第一种情况下,结果是不同的。但在第二个中,它是一样的。

两个 python 版本是相同的。 我还检查了一些时间变量,例如 accept2dyear、altzone、daylight、tzname 和 timezone 它们在两个服务器中也相同。

我应该检查一些其他的东西吗?

请您参考如下方法:

根据服务器的确切位置,该位置的时区可能在 1998 年和 2008 年之间发生了变化。例如,一些县在 2006 年和 2007 年切换了时区。一台服务器可能具有特定位置的正确时区数据,并且其他可能不会。