在Python中创建数字日期/时间表示



在Python(3.4)中,如何创建数字日期时间表示?它将在Redis上用作"分数"和ZRANGEBYSCORE*查询?

更多细节:我使用的是Redis和Python。我需要将日期和时间表示为数字,以便查询排序集。该集合将在ID上键入。分数将是数字日期时间表示。

我已经读到使用ZRANGEBYSCORE可以获得日期范围内的文章ID,但我找不到任何关于如何在Python中创建数字日期-时间表示的示例,我可以将其用作分数!你会用类似纪元的东西吗?

time模块有一个time()函数,它生成一个本地化的Unix风格的时间戳。

>>> import time
>>> int(time.time())
1460845456

再次注意,这是本地化的-它基于本地时间,不具有时区意识。

如果你想进行计算,datetime模块非常有用:

>>> import datetime
>>> datetime.datetime.now()
datetime.datetime(2016, 4, 16, 15, 26, 14, 657718)
>>> datetime.datetime.now().day
16
>>> datetime.datetime.now() - datetime.timedelta(days=3)
datetime.datetime(2016, 4, 13, 15, 26, 43, 769385)

您还可以在以下格式之间进行转换:

>>> datetime.datetime.fromtimestamp(time.time())
datetime.datetime(2016, 4, 16, 15, 28, 6, 29099)
>>> datetime.datetime.now().timestamp()
1460845739.061133

最新更新