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

时间:2016-04-16 21:59:31

标签: python python-3.x redis

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

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

我已经阅读过这可以使用ZRANGEBYSCORE获取日期范围内的文章ID,但是我无法找到有关如何在Python中创建数字日期时间表示的任何示例我可以用作分数!你会使用类似纪元的东西吗?

1 个答案:

答案 0 :(得分:2)

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