python redis存入字典序列化存储

在python中通过redis hset存储字典时,必须主动把字典通过json.dumps()序列化为字符串后再存储,

不然hget获取后将无法通过json.loads()反序列化为字典

序列化存储

r = redis_conn()
r.hset('wait_task', 'one', json.dumps({'project': 'india', 'total_size': '15.8 MB'}))
r.hset('wait_task', 'two', json.dumps({'project': 'india', 'total_size': '15.8 MB'}))
r.hset('wait_task', 'three', json.dumps({'project': 'india', 'total_size': '15.8 MB'}))

反序列化读取

'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
for k in r.hkeys('wait_task'):
    d = r.hget('wait_task', k)
    print(json.loads(d))

输出

{'project': 'india', 'total_size': '15.8 MB'}
{'project': 'india', 'total_size': '15.8 MB'}
{'project': 'india', 'total_size': '15.8 MB'}
posted @ 2022-10-07 20:28  I'm_江河湖海  阅读(4)  评论(0编辑  收藏  举报