Python:通过通配符获取memcached键值列表

时间:2012-12-24 07:38:50

标签: python django memcached

我在我的Django应用中使用memcachedpylibmc作为二进制文件。现在我想从缓存中获取键值列表。

假设我在缓存中有这个键值对数据,

{'Key_1':[1,2,3]} {'Key_2':[4,5,6]} {'Key_3':[6,7,8]}

我可以通过

获得一条记录
cache.get('Key_1')

我想获取所有Key_*数据

cache.get('Key_*')

有人建议吗?或者有可能吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

如果你有字典而不是你可以这样做:

import re
dict = { 'Key_1':[1,2,3], 'Key_2':[4,5,6], 'Key_3':[6,7,8] }
r = re.compile(r"Key_\d+")   // matching expression
matching_keys = filter(r.match, dict.keys())

通过这种方式,您可以获得所有匹配的密钥,然后只需迭代这些密钥。

答案 1 :(得分:0)

您可以使用mcdict库并像普通字典一样迭代memcached,否则您可以查看mcdict source code并在您自己的代码中应用相同的技术。