import redis
#db =3 表示链接到index =3的数据库,decode_responses = True,放入数据库的value是str类型
pool = redis.ConnectionPool(host = 'localhost',port = 6379, db = 3,password = None,decode_responses = True)
r = redis.StrictRedis(connection_pool = pool)
#没有就创建,有就修改.单独操作
r.hset('mgh1','k1','v1')
r.hset('mgh1','k2','v2')
r.hset('mgh1','k3','v3')
#批量增加,存在就修改,第二个参数是字典
r.hmset('mgh1',{'k5':'v8','k6':'10'})
#取出指定单个的value
print(r.hget('mgh1','k2'))
#批量取出values
print(r.hmget('mgh1','k1','k2'))
#只能新建
r.hsetnx('mgh1','k4','v4')
print(r.hget('mgh1','k4'))
#全部取出所有的键值对
print(r.hgetall('mgh1'))
#得到整个hash的长度,一对key - value长度为1
print(r.hlen('mgh1'))
#取出这个hash下的所有key
print(r.hkeys('mgh1'))
#取出全部的value
print(r.hvals('mgh1'))
#判断是否存在
print(r.hexists('mgh1','k5'))
#删除键值对
r.hdel('mgh1','k1')
print(r.hgetall('mgh1'))
#自增hash中的value值,不存在就创建,默认1
r.hincrby('mgh1','k6',amount = 10)
print(r.hvals('mgh1'))
输出结果
v2
['v1', 'v2']
v4
{'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k5': 'v8', 'k6': '10', 'k4': 'v4'}
6
['k1', 'k2', 'k3', 'k5', 'k6', 'k4']
['v1', 'v2', 'v3', 'v8', '10', 'v4']
True
{'k2': 'v2', 'k3': 'v3', 'k5': 'v8', 'k6': '10', 'k4': 'v4'}
['v2', 'v3', 'v8', '20', 'v4']

网友评论