这里简单介绍下在python中使用如何使用hashset,set和list:
从list开始:
一般我们使用lpush对一个list进行初始化添加,但是如果需要不断往这个list里面加值,就要用rpush:
#对list谨慎性不断加值然后输出 r.lpush("goods3",1) r.rpush("goods3","234") r.rpush("goods3","name is haha") #判断某个name为goods3的list是否存在 print(r.exists("goods3"))
如果我们想对这个list进行循环遍历也是可以的,直接判断就行了
#针对这个goods判断其key值是否存在,当管道空的时候key值也就不存在了,通过这个可以对其进行遍历 while r.exists("goods3"): s=r.lpop("goods3") print(s)
需要注意的是,这里面我们的把管道里面的值一样一个一个拿出来了,redis里面缓存的数据就不存在了,意思就是现在你在redis里面已经没有name为goods3的list了。
针对set一般操作:
# 对set集合不断加值 r.sadd('goods4',989) r.sadd('goods4','sdfsd') r.sadd('goods4', 789) r.sadd('goods4', 23) # 查看set下面所有name为goods4的value print(type(r.smembers("goods4"))) print(r.smembers('goods4'))
这里也可以直接使用smenber直接输出set里面的值,使用这个方法不会让redis里面的set消失,当然,我们也可以使用上面list的方法将其输出来。
针对hashset的操作:
#hashset的set方式为hset(name,key,value):name对应的hash中设置一个键值对(不存在,则创建,存在则修改) r.hset("hashset","goods1",56) r.hset("hashset", "dog",98) #要查看name为hashset下面所有的键值对的话就使用hgetall print(r.hgetall("hashset")) #要查看name为hashset下面goods1这个key对应的值使用hget print(r.hget("hashset","goods1")) # 查看info的所有键,返回列表 print(r.hkeys('hashset')) # 查看info的所有值,返回列表 print(r.hvals('hashset')) #在name对应的hash中批量设置键值对使用hmset,例如 r.hmset('hashset', {'name': '1112', 'age': 22, 'id': 223}) print(r.hgetall("hashset")) #获取name对应的hash中键值对的个数可以使用hlen(name): print(r.hlen("hashset")) #判断某个key是否存在,存在返回true,不存在返回false print(r.hexists("hashset","name")) #删除指定name中的keys键值对使用hdel(name,*keys) r.hdel("hashset","name")
以上为有关python对redis的常规操作,如有疑问,欢迎评论留言