命令列表:


操作

命令

参数

返回值

添加

sadd

SADD key member [member …]

被添加到集合中的新元素的数量,不包括被忽略的元素

查看数量

scard

SCARD key

数值

查看成员

smembers

SMEMBERS key

集合

随机查看成员

srandmember

srandmember key num

集合成员

元素移动

smove

SMOVE source destination member

布尔

删除随机元素

spop

SPOP key

被移除的元素

删除元素

srem

SREM key member [member …]

被成功移除的元素的数量,不包括被忽略的元素

验证元素的存在性

sismember

SISMEMBER key member

布尔

取差集

sdiff

SDIFF key [key …]

列表

取差集入集合

sdiffstore

SDIFFSTORE destination key [key …]

结果集中的元素数量

取交集

sinter

SINTER key [key …]

列表

取交集入集合

sinterstore

SINTERSTORE destination key [key …]

结果集中的元素数量

取并集

sunion

SUNION key [key …]

列表

取并集入集合

sunionstore

SUNIONSTORE destination key [key …]

结果集中的元素数量

添加一个或多个:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#添加set类型的数据
print cli.sadd("set","1","a","123")
print cli.sadd("set1","liuqin")
print cli.sadd("set2","1","lipeng","123")

查看value的数量:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#查看key对应的value数量
print cli.scard("set")

查看成员:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#查看集合的所有成员
print cli.smembers("set")

随机查看成员信息

# 随机查看成员信息
cli.srandmember(name="vcc:customer_nube_pool:2020040801",number= 5 )

元素移动:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#将元素从集合A移动到集合B
print cli.smove(src="set",dst="set1",value="123")

删除随机元素:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#移除集合中的随机元素
print cli.spop("set4")

删除集合中一个或多个元素:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#移除集合中的一个或多个元素
print cli.srem("set",1,"a")

验证value是否是key的成员:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#验证value是否是key的成员
print cli.sismember("set","1")
print cli.sismember("set","2")

取差集:

  • 查看第一个集合和其他所有集合的差集(下边的例子就是:set1和set做和,然后和set2做差)
##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#查看第一个集合和其他所有集合的差集(下边的例子就是:set1和set做和,然后和set2做差)
print cli.sdiff("set2","set1","set")

取差集(返回值入集合):

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#和sdiff一致,只是结果存放到set3中
print cli.sdiffstore("set3","set","set1")

取交集:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#查看所有集合的交集
print cli.sinter("set","set1","set2")

取交集(返回值入集合):

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#收集后边几个集合的交集到set4
print cli.sinterstore("set4","set","set2")

取并集:

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#返回所有集合的并集
print cli.sunion("set","set1")

取并集(返回值入集合):

##----以集群形式连接redis----
sentinel = Sentinel([(ip[0],port[0]),(ip[1],port[1]),(ip[2],port[2])])
cli = sentinel.master_for(service_name=service_name,db=db)

#返回所有集合的并集,并赋值给一个新的集合
print cli.sunionstore("set5","set","set1")