如何存储和提取字典 redis
# I have the dictionary my_dict
my_dict = {
'var1' : 5
'var2' : 9
}
r = redis.StrictRedis//
我将如何存储 my_dict 并提取它 redis. 例如,以下代码不起作用。
#Code that doesn't work
r.set/'this_dict', my_dict/ # to store my_dict in this_dict
r.get/'this_dict'/ # to retrieve my_dict
没有找到相关结果
已邀请:
11 个回复
三叔
赞同来自:
/可以使用多个键
/.
郭文康
赞同来自:
窦买办
赞同来自:
.
他皈依 python B型。 Redis 类型,反之亦然。
免责声明:我写了一个图书馆。 这是代码:
https://github.com/seperman/redisworks
</class>
董宝中
赞同来自:
在删除de序列化时 json.loads
我更喜欢 SET / GET 超过 HMSET/HGETALL, 因为最后一次操作的时间复杂性是相等的 O /N/.
关于类型的类型 /eg.bytes/, 这不是通过函数序列化的 json ?
您可以编写编码器功能/用于使用功能序列化的类型的解码器 json. 例如。记录编码器的功能/解码器 base64/ascii 字节数组。
八刀丁二
赞同来自:
以下是命令
使用类型值执行基本操作
.
HGET => 返回一个传输密钥的值
HSET => 放 / 更新一个键的值
HMGET => 返回一个或多个传输键的值。
HMSET => 放 / 更新多个键的值
HGETALL = > 返回所有夫妻 /核心价值/在映射中。
以下是他们在图书馆中的各自方法。
:-
HGET => hget
HSET => hset
HMGET => hmget
HMSET => hmset
HGETALL => hgetall
所有上述方法 setter 如果它不存在,请创建显示。
所有上述方法 getter 不要引起 error/exceptions,, 如果一个 mapping / key in mapping 不存在。
我希望这一切都澄清。
喜特乐
赞同来自:
我没有检查一下 efficiency/speed.
八刀丁二
赞同来自:
但数据类型 redis 和 python 不要一致。 Python 听写可以任意嵌入,但是 redis hash 它需要您的值是一个字符串。 您可以使用的另一种方法 - 这会转换您的数据 python 在字符串中并保存在 redis, 有点
然后当您获得一个字符串时,您需要拆卸它以重新创建对象 python.
莫问
赞同来自:
https://msgpack.org/index.html
批准是批准的 redis.
使用
https://github.com/msgpack/msgpack-python
和
https://github.com/aio-libs/aioredis
冰洋
赞同来自:
喜特乐
赞同来自:
https://github.com/RedisLabs/rejson-py
, 哪个相对较新 2017 一年。 看这个
https://redislabs.com/blog/redis-as-a-json-store/
.
石油百科
赞同来自:
在我用的词典中 /
D.
/ 有钥匙 437.084 /格式 MD5/, 以及此表格的值:
第一次测试
/将数据插入键值比较 redis/:
第二次测试
/直接以键插入数据 Redis/:
如您所见,只有在第二个测试中应分析值。 'info', 因为 hgetall/钥匙/ 已经返回了 dict, 但没有投资。
当然,使用的最佳例子 Redis 听说python是
第一次测试