将日期时间转换为POSIX时间

57 投票
6 回答
45406 浏览
提问于 2025-04-11 09:32

我该如何把一个日期时间对象转换成POSIX时间戳呢?在Python中,有一些方法可以从时间戳创建一个日期时间对象,但我找不到明显的方法来做反向操作。

6 个回答

15

请注意,Python现在(3.5.2版本)在datetime对象中包含了一个内置方法,可以用来处理这个问题:

>>> import datetime
>>> now = datetime.datetime(2020, 11, 18, 18, 52, 47, 874766)
>>> now.timestamp() # Local time
1605743567.874766
>>> now.replace(tzinfo=datetime.timezone.utc).timestamp() # UTC
1605725567.874766 # 5 hours delta (I'm in UTC-5)
23

在进行UTC时间计算时,calendar.timegmtime.gmtime 的反向操作。

import calendar, datetime
d = datetime.datetime.utcnow()
print calendar.timegm(d.timetuple())
65

在编程中,有时候我们需要处理一些数据,比如从一个地方获取数据,然后把它放到另一个地方。这个过程就像是搬家,把东西从一个箱子搬到另一个箱子。

有些时候,我们会遇到一些问题,比如数据的格式不对,或者我们需要对数据进行一些处理才能使用。这就像是你在搬家的时候,发现有些东西需要先清理一下,才能放进新家。

在这个过程中,我们可能会用到一些工具或者方法来帮助我们更顺利地完成任务。就像搬家时,我们可能会用到手推车、纸箱等工具来提高效率。

总之,处理数据的过程可能会遇到各种各样的挑战,但只要我们找到合适的方法和工具,就能顺利完成任务。

import time, datetime

d = datetime.datetime.now()
print time.mktime(d.timetuple())

撰写回答