我是python的新手。运行代码时出现错误:
import redis
def redisSave(case, key, ob):
dataBase = None
if case == 'Product':
dataBase = redis.Redis(db=0)
dataBase.set(key, ob)
dataBase.expire(key, time=600)
else:
pass
dictOb = {
'price': '2000 $',
'weight': '50 lb'
}
redisSave('Product', 'first', dictOb)
它表示输入类型无效(redis.exceptions.DataError)
答案 0 :(得分:2)
尝试以下操作:
def redis_save(case, key, obj):
data_base = None
if case == 'Product':
data_base = redis.Redis(db=0)
if isinstance(obj, dict):
data_base.hmset(key, obj)
data_base.expire(key, time=600)
访问数据: data_base.hgetall('first')
结果:
{
b'price': b'2000 $',
b'weight': b'50 lb'
}
答案 1 :(得分:0)
您还可以将数据存储为 JSON转储或腌制对象。参见:how to store a complex object in redis (using redis-py)。