python连接Redis,集合(set)的简单操作

集合(SET)

  • 新的存储需求:存储大量的数据,在查询方面提供更高的效率 ;
  • 需要的存储结构:能够保留大量的数据,高效的内部存储机制,便于查询;
  • Set类型:与hash存储结构完全相同,仅存储键,不存储值(nil),并且值不允许重复。

注意:

  1. 集合内的字符串值不能重复
  2. 集合内的字符串值不排序
    python连接Redis,集合(set)的简单操作_第1张图片python连接Redis,集合(set)的简单操作_第2张图片
import redis
client = redis.Redis(decode_responses=True)
client.sadd('add','banana','bear','beat','Apple','cup','descend')

print('所有元素:',client.smembers('add'))    #返回集合的所有元素
print('移除:',client.spop('add'))        #在集合中随机获取一个元素,并移除
print('删除Apple:',client.srem('add','Apple'))        #删除集合中的指定的元素
print('元素个数:',client.scard('add'))       #返回元素个数
print('随机返回:',client.srandmember('add'),'\n') #从集合中随机返回一个或多个元素

print('是否存在',client.sismember('add','banana'))#集合成员是否存在判断
# print(client.move('add','zdd'))  #把第一个集合的元素移动到第二个集合中
print("剩下:",client.smembers('add'))
print('增量迭代:',client.sscan('add',0,'b*'))  #增量迭代式返回集合中的元素'''
client.sadd('zdd','12110','1211','12111','bear','descend')

# sinter sunion sdiff 交并差集
# SunionStore命令:带存储的集合并运算
snew = client.sunionstore('sn','add','zdd')
s1 = client.sinter('add','zdd')
s2 = client.sunion('add','zdd')
s3 = client.sdiff('add','zdd')
print('集合并运算:',snew,':',client.smembers('sn'))
print('交:',s1)
print('并:',s2)
print('差:',s3)

python连接Redis,集合(set)的简单操作_第3张图片

你可能感兴趣的:(python,NOsql——MongoDB,Redis)