假设我有一个python dict aa = {"name": "nilesh", "age":29}
当我将它存储在redis散列中时,所有数据类型都将更改为字符串。
import redis
r = redis.StrictRedis()
r.hmset("nilesh_123", aa)
bb = r.hgetall("nilesh_123")
现在bb来自{'age': '29', 'name': 'nilesh'}
。是否有任何pythonic方式将此哈希返回值再次转换为python dict格式?我看到的一种方法是在某处存储字典值的所有数据类型,然后在通过迭代redis哈希值获得该哈希值时再次转换它们,但我正在寻找更好的pythonic解决方案。
我可以将dict作为pickle对象存储在redis字符串中然后使用pickle再次加载它,但我更感兴趣的是使用散列与字符串比较。
答案 0 :(得分:-1)
{'age': '29', 'name': 'nilesh'}
是JSON格式,尝试寻找可以将JSON转换为python dict的工具,如:
答案 1 :(得分:-1)
好吧,我不会说pythonic方式,但
mydict = eval("{'age': '29', 'name': 'nilesh'}")
或(稍微)更好ast.literal_eval,有些人说eval is evil