如何在Python (3.4)中,如何创建数字日期时间表示?它将被用作分数'和ZRANGEBYSCORE *查询Redis?
更多细节:我使用的是Redis和Python。我需要将日期和时间表示为数字,以便我查询排序集。该集将键入ID。分数将是数字日期时间表示。
我已经阅读过这可以使用ZRANGEBYSCORE
获取日期范围内的文章ID,但是我无法找到有关如何在Python中创建数字日期时间表示的任何示例我可以用作分数!你会使用类似纪元的东西吗?
答案 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