Python2中datetime对象的timestamp方法的替代

Python2中datetime对象的timestamp方法的替代

本站内容版权属于本人。转载须告知本人,写明出处,并在文首提供指向本站对应文章的链接。
本文链接:Python2中datetime对象的timestamp方法的替代

在Python3里,可以直接用datetime对象的timestamp方法得到对应的时间戳。但是Python2又没有,为了兼容,还是要找到替代品,完成同样的事情。

于是就Google一下“python 2 datetime timestamp”,第一个结果给出了这样的回答:

看上去没什么问题,但是t.timetuple()没有时区信息,而datetime有,那时间戳就不是UTC的了,和Python3里的又不一样。

点开后面的结果,又一个回答是这样的:

看上去又没什么问题,但是一运行就发现,如果tepoch中一个有时区,一个没时区,就会出现异常。

最后终于找到了个能用的,可以解决时区的问题:

虽然平时戏称自己是面向Google编程的,但有时Google得到的答案也是错的,甚至要找许久才能找到正确答案,这个过程还是有点考验人的。对外界得到的东西,还需要亲自试验,可能问题隐藏在深处,难以使人察觉。上面的答案一和二都被选为正确答案并得到了许多赞,但在我这里就是错的,只因为我考虑到时区的情况,而别人可能没考虑到或者不关心。

最后我要说,还是让Python2早早入土更好。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

This site uses Akismet to reduce spam. Learn how your comment data is processed.