Python分享之redis(2)

66 阅读1分钟

Python分享之redis(2)

Hash 操作

redis中的Hash 在内存中类似于一个name对应一个dic来存储

hset(name, key, value)

#name对应的hash中设置一个键值对(不存在,则创建,否则,修改) r.hset("dic_name","a1","aa")

hget(name,key)

r.hset("dic_name","a1","aa") #在name对应的hash中根据key获取value print(r.hget("dic_name","a1"))#输出:aa

hgetall(name)

#获取name对应hash的所有键值 print(r.hgetall("dic_name"))

hmset(name, mapping)

#在name对应的hash中批量设置键值对,mapping:字典 dic={"a1":"aa","b1":"bb"} r.hmset("dic_name",dic) print(r.hget("dic_name","b1"))#输出:bb

hmget(name, keys, *args)

# 在name对应的hash中获取多个key的值

li=["a1","b1"] print(r.hmget("dic_name",li)) print(r.hmget("dic_name","a1","b1"))

hlen(name)、hkeys(name)、hvals(name)

dic={"a1":"aa","b1":"bb"} r.hmset("dic_name",dic)

#hlen(name) 获取hash中键值对的个数 print(r.hlen("dic_name"))

#hkeys(name) 获取hash中所有的key的值 print(r.hkeys("dic_name"))

#hvals(name) 获取hash中所有的value的值 print(r.hvals("dic_name"))

hexists(name, key)

#检查name对应的hash是否存在当前传入的key print(r.hexists("dic_name","a1"))#输出:True

hdel(name,*keys)

#删除指定name对应的key所在的键值对 r.hdel("dic_name","a1")

hincrby(name, key, amount=1)

#自增hash中key对应的值,不存在则创建key=amount(amount为整数) print(r.hincrby("demo","a",amount=2))

hincrbyfloat(name, key, amount=1.0)

#自增hash中key对应的值,不存在则创建key=amount(amount为浮点数)

hscan(name, cursor=0, match=None, count=None)

hscan_iter(name, match=None, count=None)

API图片.png