使用Python在Redis中获取多个键/值

时间:2019-01-16 14:06:37

标签: python redis get

我可以使用Python从Redis获取一个键/值:

import redis
r = redis.StrictRedis(host='localhost', port=6379, db=0)
data = r.get('12345')

如何从例如一次有2个键(一次通话)?

我尝试使用:data = r.get('12345', '54321'),但这不起作用。

还如何基于部分键获取所有值? 例如data = r.get('123*')

2 个答案:

答案 0 :(得分:5)

您可以使用方法mget来获取一个调用中几个键的值(以与键相同的顺序返回):

data = r.mget(['123', '456'])

要按照特定模式搜索键,请使用scan方法:

cursor, keys = r.scan(match='123*')
data = r.mget(keys)

(文档:https://redis-py.readthedocs.io/en/latest/

答案 1 :(得分:0)

正如@atn 所说:(如果使用 django)

from django_redis import get_redis_connection

r = get_redis_connection()
data = r.keys('123*')

现在可以使用了。