您的位置:首页 > 新闻 > 热点要闻 > pycharm redis 库

pycharm redis 库

2025/1/8 5:01:54 来源:https://blog.csdn.net/qq_65307874/article/details/141474816  浏览:    关键词:pycharm redis 库

        Redis(Remote Dictionary Server)是一个开源的 内存中数据结构存储系统,用作数据库、缓存和消息代理。它支持多种类型的数据结构,如字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)和范围查询(bitmaps)、超日志(hyperloglogs)和地理空间(geospatial)索引半径查询。

1、安装 redis 库

        打开终端 输入:

pip install redis

 

2、连接与关闭

import redis# port 端口号 默认 6379
client = redis.StrictRedis(host="主机ip",port=6379,db=0,password="123456")# 选择数据库 1 默认16个 0-15
client.select(1)...
# 相关操作
...# 保存数据
# client.save()
# 关闭连接
client.close()

 

3、对于键值对 操作

# 获取全部键值对
print(client.keys())# # 获取该键 存储值的 类型
print(client.type('key_list'))# 设置有效期
client.expire("key_list", 20)
print(client.ttl("key_list"))# 移除有效期
client.persist("key_list")# 删除键
client.delete("address")

 

4、字符串 相关操作

# string
# 设置string 类型键值对
client.set("id", 101)
# 获取 该键 的值 decode解码
print(client.get("id").decode())
# 设置多个
client.mset({"name": "qiku", "address": "东三街"})
# 获取多个
print(client.mget(["id", "name"]))# 设置 改键 存活时间
client.setex('id', 30, 101)
# 获取 键 剩余存活时间
print(client.ttl("id"))# 自增 可设置每次自增数字 将 key 中储存的数字值
client.incr('id', amount=20)
# 自减 将 key 中储存的数字值 可设置每次自减数字
client.decr('id', amount=10)
print(client.get("id").decode())# key 已经存在并且是一个字符串, APPEND 命令将指定的 value 追加到该 key 原来值(value)的末尾
# 若 key 不存在 等同于 set(key,value)
client.append("ad", "wd")
print(client.get('ad').decode())

 

5、列表 相关操作

# 头部擦插入 左
client.lpush("key_list", 1, 2, 3, 4, 5)
# 尾部插入 右
client.rpush("key_list", 0)# 头部删除 左
client.lpop("key_list")
client.command()
# # 尾部删除 右
client.rpop("key_list")# 索引取值 查询指定索引的值
print(client.lindex("key_list", 0))
# # 范围索引
print(client.lrange("key_list", 0, 5))# 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除
client.ltrim("key_list",0,1)# 修改指定索引的值
client.lset("key_list", 1, 3)# 删除 count 个 value
client.lrem("key_list", count=2, value='3')

 

6、哈希 相关操作

# 插入 哈希 键值对
client.hset("key_hash", "key1", "value1")
client.hset("key_hash", "key2", "value2")# 查询 哈希键值对 中 指定 键的 值
print(client.hget("key_hash", "key1"))# 查询 哈希键值对 所有键值对
print(client.hgetall("key_hash"))# 查询 哈希键值对 中 所有 键
print(client.hkeys("key_hash"))# 查询 哈希键值对 中 所有值
print(client.hvals("key_hash"))# 删除 哈希键值对 中 指定 键的 字段
client.hdel("key_hash","key1")

 

7、集合 相关操作

# 插入集合
client.sadd("key_set", 1, 2, 3, 4)# 删除 集合内 多个值
client.srem("key_set", 1, 2, 3)# 集合内 元素个数
print(client.scard("key_set"))# 判断集合内 是否 存在 值  返回 0否 1是
print(client.sismember("key_set", 4))# 输出集合内 所有 值
print(client.smembers("key_set"))# 两个集合 交集
print(client.sinter("key_set", "key_set2"))# 两个集合 并集
print(client.sunion("key_set", "key_set2"))# 两个集合 差集
print(client.sdiff("key_set", "key_set2"))# 随机移除 集合内一个数 并 返回
print(client.spop("key_set"))

 

8、有序结合 相关操作

# 有序集合 根据权重 排序 值不可重复
# 添加 值 并写入权重 可根据权重 找到该值
client.zadd("key_zset", {"篮球": 20, "足球": 35})
client.zadd("key_zset", {"排球": 20, "足球": 35})# 删除 指定值
print(client.zrem("key_zset", "篮球"))# 有序集合内 值的个数
print(client.zcard("key_zset"))# 有序集合中指定区间分数的成员数
print(client.zcount("key_zset", 10, 30))# 值的权重
print(client.zscore("key_zset", "篮球"))# 已排序 索引区间
print(client.zrange("key_zset", 0, 1))

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com