【python + Redis】hash值查增删
文章目录
- 前置步骤
- 一、查
- 二、增
- 三、删
前置步骤
pip install redis
# -*- coding: utf-8 -*-
import redis
#这个redis不能用,请根据自己的需要修改
r =redis.Redis(host="127.0.0.1",port=6379,password="123456", db=0)
一、查
1.定义列表list_r1,存储查询到的数据
2.定义data,用r.hgetall
方法获取哈希表的所有字段和值,
3.循环遍历出行数据,转成字典类型
4.最后用if all
方法将库中字段与之相匹配的数据查出,添入list_r1
# hash查
def get_hv(redis_name,params):
list_r1 = []
data=r.hgetall(redis_name)
for k,v in data.items():
row_data = json.loads(v.decode('utf-8'))
if all(row_data.get(key,False)==val for key,val in params.items()):
list_r1.append(row_data)
print("list_r1:",list_r1)
return list_r1
二、增
1.params[“id”]要与Mysql数据库中的自增id相同
2.这里用到了r.hset
方法,格式为: r.hset(表名,key,value)
3.注意value不能使用字典类型,我们需要用json.dumps
转字符串
# hash增
def set_hv(hash,params):
if params.get("id",False):
r.hset(hash,params["id"],json.dumps(params))
return True
三、删
# hash删
def del_hv(hash,params):
if params.get("id",False):
r.hdel(hash,params["id"],json.dumps(params))
return True
else:
return False