当前位置: 首页 > news >正文

python学习之redis

python中一些常用的redis操作

键( keys)的操作:

import redisclient = redis.Redis(db=1)# keys 键的操作
# 打印 id 的类型
print(client.type("id"))
# 设置id的存活时间
client.expire("id", 100)
# 打印剩余存活时间
print(client.ttl("id"))
# 设置为永久存活
client.persist("id")client.close()

字符串(string)

# string
# 创建字符串的键
client.set("id",101)
# 获取键
print(client.get("id").decode())
# 设置键的值
client.mset({"name": "张三", "age": 23})
# 获取键的多个值
print(client.mget(["name", "age"]))
# 设置存在时间
client.setex("id", 100, "10002")
# 打印剩余时间
a = client.ttl("id")
print(a)
# id 以2为单位递增
client.incr("id", amount=2)
print(client.get("id"))
client.decr("id")
# id 以1为单位递减
print(client.get("id"))

列表(list)

# 放左边
client.lpush("key_list", 1, 2, 3)
# 右边
client.rpush("key_list",0)
# 长度
print(client.llen("key_list"))
# 删除左
client.lpop("key_list")
# 删除右
client.rpop("key_list")
# 返回索引对应的元素
print(client.lindex("key_list",1))
# 返回索引范围内的元素
print(client.lrange("key_list",1,3))
# 切割
print(client.ltrim("key_list",2,3))

哈希(hash)

# 创建hsah表,添加键值对
client.hset("key_hash", "key2", "value2")
# 获取表中键对应的值
print(client.hget("key_hash", "key2"))
# 获取长度
print(client.hlen("key_hash"))
# 删除对应的键值对
client.hdel("key_hash", "key1")
# 获取所有的键
print(client.hkeys("key_hash"))
# 获取所有的值
print(client.hvals("key_hash"))
# 获取所有的键值对
print(client.hgetall("key_hash"))

集合(set)

# 集合set
# 添加
client.sadd("key_set", 1, 2, 3, 4, 5)
client.sadd("key_set2", 1, 3, 5, 7)
# 删除
client.srem("key_set", 1,6)
# 是否是成员
print(client.sismember("key_set","3"))
# 成员个数
print(client.scard("key_set"))
# 所有成员
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"]))

有序集合(zset)

# 有序集合zset
# 添加值 权重
client.zadd("key_zset", {"q": 5, "y": 2, "c": 6})
# 删除值和权重
client.zrem("key_zset","q")
# 查找范围内的权重
print(client.zrange("key_zset", 1, 10))
# 查找范围内的权重个数
print(client.zcount("key_zset",1,7))
# 根据值查权重
print(client.zscore("key_zset","c"))

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • openpyxl库详细介绍十分全面
  • QT-五子棋游戏
  • JavaScript 中的深拷贝新宠:structuredClone() 函数详解
  • 网络安全之xss靶场练习
  • 用py获取显卡的占用率
  • 【解压即玩】PC电脑版【漫威蜘蛛侠2】豪华中文版+通关存档+画质超棒,神作
  • MySQL——单表查询(二)按条件查询(11)OR 和 AND 关键字一起使用的情况
  • Springcloud从零开始--Eureka(一)
  • 九、 系统安全(考点篇)试题
  • 无人机飞手培训:考证、组装、维修技术详解
  • 深信服技术服务工程师面试全过程分享
  • 为什么Qt源码中要用d_ptr和q_ptr
  • 力扣223题详解:矩形面积的多种解法与模拟面试
  • 两个dp题
  • MyBatis 源码解读:专栏导读与学习路线
  • 2017 年终总结 —— 在路上
  • bearychat的java client
  • JavaScript学习总结——原型
  • JS笔记四:作用域、变量(函数)提升
  • mysql中InnoDB引擎中页的概念
  • PhantomJS 安装
  • php中curl和soap方式请求服务超时问题
  • Web设计流程优化:网页效果图设计新思路
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 机器学习学习笔记一
  • 解析 Webpack中import、require、按需加载的执行过程
  • 前端面试之CSS3新特性
  • 使用common-codec进行md5加密
  • 我有几个粽子,和一个故事
  • 策略 : 一文教你成为人工智能(AI)领域专家
  • ‌前端列表展示1000条大量数据时,后端通常需要进行一定的处理。‌
  • # AI产品经理的自我修养:既懂用户,更懂技术!
  • # Maven错误Error executing Maven
  • # Python csv、xlsx、json、二进制(MP3) 文件读写基本使用
  • (39)STM32——FLASH闪存
  • (day 2)JavaScript学习笔记(基础之变量、常量和注释)
  • (Matlab)遗传算法优化的BP神经网络实现回归预测
  • (附源码)计算机毕业设计ssm-Java网名推荐系统
  • (附源码)计算机毕业设计SSM智能化管理的仓库管理
  • (几何:六边形面积)编写程序,提示用户输入六边形的边长,然后显示它的面积。
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (转)母版页和相对路径
  • *(长期更新)软考网络工程师学习笔记——Section 22 无线局域网
  • ****** 二 ******、软设笔记【数据结构】-KMP算法、树、二叉树
  • .NET Core 将实体类转换为 SQL(ORM 映射)
  • .Net 中的反射(动态创建类型实例) - Part.4(转自http://www.tracefact.net/CLR-and-Framework/Reflection-Part4.aspx)...
  • .Net6支持的操作系统版本(.net8已来,你还在用.netframework4.5吗)
  • .NET开源项目介绍及资源推荐:数据持久层
  • @Builder注释导致@RequestBody的前端json反序列化失败,HTTP400
  • @JSONField或@JsonProperty注解使用
  • @transaction 提交事务_【读源码】剖析TCCTransaction事务提交实现细节
  • [ 隧道技术 ] cpolar 工具详解之将内网端口映射到公网
  • [100天算法】-目标和(day 79)
  • [2021ICPC济南 L] Strange Series (Bell 数 多项式exp)