我需要像这样定期存储一个 python 列表
[
[1, ...],
[2, ...],
[3, ...],
[4, ...]
]
- 我需要让它在几秒钟后过期并添加新的(所以我想创建列表并使用我的 python 列表立即填充它)。
- 我需要检索特定范围的子列表,例如:
[[2, ...], [3, ...]]
使用 this library我正在考虑使用 lpush
来一次创建和填充列表,expire
来设置创建和填充后的过期时间,lrange
获取我的 python sub_list 的特定范围
我使用的是好的解决方案还是有更适合我需求的解决方案?
最佳答案
只用泡菜
# store_objects_in_redis.py
'''
Pickle (dumps) & set to store
Get & and unpickle (loads) to retrieve
#
Courtesy: Armin Ronacher, http://flask.pocoo.org/snippets/73/
'''
import redis
from pickle import loads, dumps
# Create client with default connection
client = redis.client.StrictRedis()
# An example complex object
stored_object = [{1,2,3}, {'a':1,'b':2,'c':3}, ['foo', 'bar']]
# store
client.set('obj', dumps(stored_object))
# retrieve
retrieved_object = loads(client.get('obj'))
# compare
print(stored_object==retrieved_object, '\n', stored_object, '\n', retrieved_object)
'''
Prints (Running in windows7)
== RESTART: K:/.../REDIS/store_objects_in_redis.py ==
True
[{1, 2, 3}, {'c': 3, 'b': 2, 'a': 1}, ['foo', 'bar']]
[{1, 2, 3}, {'c': 3, 'b': 2, 'a': 1}, ['foo', 'bar']]
'''
关于python, redis : store on redis a multi-dimensional list. 最佳数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46812748/