0
点赞
收藏
分享

微信扫一扫

《Redis操作Python系列、redis基本命令 set|CSDN创作打卡》

一条咸鱼的干货 2022-02-08 阅读 156

导读

1. 好友/关注/粉丝/感兴趣的人集合

2. 随机展示

3. 黑名单/白名单

创建测试类【demo12.py】

新增

name - 对应的集合中添加元素

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset","方块A","梅花A","红桃A","黑桃A","大王","小王")

print(r.scard("myset"))#集合长度
print(r.smembers("myset"))#查询所有成员

 

元组方式获取

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset","方块A","梅花A","红桃A","黑桃A","大王","小王")

scan=r.sscan("myset")#按照元组的方式获取
print(scan)

print(r.sscan_iter("myset"))#获取迭代器
#遍历迭代器
for str in r.sscan_iter("myset"):
    print(str)

差集

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset1","方块A","梅花A","红桃A","黑桃A","大王","小王")
r.sadd("myset2","方块2","梅花2","红桃2","黑桃2","大王","小王")

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

print(r.sdiff("myset1","myset2"))#myset1对myset2的差集
print(r.sdiff("myset2","myset1"))#myset2对myset1的差集

r.sdiffstore("myset3","myset1","myset2")#将myset1对myset2的差集存储到myset3中
print("myset3:",r.smembers("myset3"))

交集

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset1","方块A","梅花A","红桃A","黑桃A","大王","小王")
r.sadd("myset2","方块2","梅花2","红桃2","黑桃2","大王","小王")

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

print(r.sinter("myset1","myset2"))#myset1对myset2的交集
print(r.sinter("myset2","myset1"))#myset2对myset1的交集

r.sinterstore("myset3","myset1","myset2")#将myset1对myset2的交集存储到myset3中
print("myset3:",r.smembers("myset3"))

并集

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset1","方块A","梅花A","红桃A","黑桃A","大王","小王")
r.sadd("myset2","方块2","梅花2","红桃2","黑桃2","大王","小王")

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

print(r.sunion("myset1","myset2"))#myset1对myset2的并集
print(r.sunion("myset2","myset1"))#myset2对myset1的并集

r.sunionstore("myset3","myset1","myset2")#将myset1对myset2的并集存储到myset3中
print("myset3:",r.smembers("myset3"))

判断是否是集合的成员

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset1","方块A","梅花A","红桃A","黑桃A","大王","小王")

print(r.smembers("myset1"))#myset1所有元素

print(r.sismember("myset1","红桃A"))#判断红桃A是否是集合中的成员
print(r.sismember("myset1","红桃2"))#判断红桃2是否是集合中的成员

移动

将某个成员从一个集合中移动到另外一个集合

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset1","方块A","梅花A","红桃A","黑桃A","大王","小王")
r.sadd("myset2","方块2","梅花2","红桃2","黑桃2","大王","小王")

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

r.smove("myset1", "myset2", "方块A")

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

删除·可以随机或指定删除

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.flushall()

r.sadd("myset1","方块A","梅花A","红桃A","黑桃A","大王","小王")
r.sadd("myset2","方块2","梅花2","红桃2","黑桃2","大王","小王")

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

print("随机删除:",r.spop("myset1"))
print("指定删除",r.srem("myset2","小王"))

print(r.smembers("myset1"))#myset1所有元素
print(r.smembers("myset2"))#myset2所有元素

 

希望能对大家有所帮助。欢迎一键三连

举报

相关推荐

0 条评论