首页 > 其他 > 详细

使用StrictRedis连接操作有序集合

时间:2020-04-08 20:35:27      阅读:60      评论:0      收藏:0      [点我收藏+]

看崔大佬的书,它连接redis使用的是StrictRedis,但是有序集合的操作zadd(name,*args,**kwargs)会报错,查看资料发现应该是zadd(name,iteritems)。

redis数据库中有序集合的操作

1,添加

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#向键grade的添加元素Bob分数为98 redis.zadd(
grade,{Bob:98,Mike:80})

2,删除

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#删键grade的元素Mike redis.zrem(
grade,Mike)

3,存在执行,不存在添加

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#如果grade中存在Bob的元素则分数进行-2操作,否则添加
redis.zincrby(grade,-2,Bob)

4,获取元素的排名

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#获取grade中元素的排名
amy = redis.zrank(grade,吴志斌)
print(amy)

5,获取倒序

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#获取grade中元素的倒序排名
amy = redis.zrevrank(grade,吴志斌)
print(amy)

6,获取范围的元素

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#获取grade中排名列表
amy = redis.zrevrange(grade,0,3)
print(amy)

7,获取分数范围内的元素

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#获取80-100分数范围的元素
grade = redis.zrangebyscore(grade,80,100)
print(grade)

8,返回分数范围的元素个数

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#返回80-100分数范围的元素个数
grade = redis.zcount(grade,80,100)
print(grade)

9,获取键中元素的个数

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#获取键grade表中的元素个数
grade = redis.zcard(grade)
print(grade)

10,按排名删除元素

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
#获取键grade表中排名1-3的元素
grade = redis.zremrangebyrank(grade,0,2)
print(grade)
返回删除元素的个数

11,删除分数范围的元素

from redis import StrictRedis

redis = StrictRedis(host=localhost,port=6379,db=0,password=foobared)
# 删除键grade中分数范围100-140的元素
redis.zremrangebyscore(grade,100,140)
返回的是删除元素的个数

12,

使用StrictRedis连接操作有序集合

原文:https://www.cnblogs.com/wuzhibinsuib/p/12662412.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!