Python连接Redis(简单连接、连接池连接、存取数据示例)

天行健,君子以自强不息;地势坤,君子以厚德载物。


每个人都有惰性,但不断学习是好好生活的根本,共勉!


文章均为学习整理笔记,分享记录为主,如有错误请指正,共同学习进步。


黄金白璧买歌笑,一醉累月轻王侯。


文章目录

  • 一、Python连接Redis
    • 1. 下载安装redis库
    • 2. 连接Redis
  • 二、存取数据
    • 1. 存入数据
    • 2. 取出数据
    • 3. 关闭资源
    • 4. 完整示例代码
  • 三、连接池(拓展)
    • 1. 建立连接池
    • 2. 存取数据
    • 3. 关闭资源
    • 4. 完整示例代码
  • 四、示例代码下载


一、Python连接Redis

1. 下载安装redis库

使用redis前需要先下载安装redis的库,安装命令如下

pip install redis

详细的安装Redis库内容可参考:python安装redis库

2. 连接Redis

无密码连接redis的代码如下(未设置密码时,无需指定密码参数)

# 引入Redis库
import redis
# 连接运行的redis服务,host为Redis服务的ip地址,也可以是url链接
redis_client = redis.StrictRedis(host="127.0.0.1", port=6379, db=0)

有密码连接redis的代码如下(设置了密码,指定密码参数和值)

# 引入Redis库
import redis
# 连接运行的redis服务,host为Redis服务的ip地址,也可以是url链接
redis_client = redis.StrictRedis(host="127.0.0.1", port=6379, db=0, password="12345")

host是redis服务的ip地址,也可以是url链接
port是redis服务的访问端口,默认是6379,需要与redis服务设置的保持一致
db是使用的redis数据库是哪一个,默认是0
password是redis服务的密码,默认密码为空,如果设置了密码,需要填入密码

二、存取数据

连接redis数据库后,可以键值对形式,存入不同类型的值

接着第一部分,连接redis后,使用连接对象redis_client进行存取

以下以简单的字符串值存取为例

1. 存入数据

存数据的代码如下

# 设置键值对
redis_client.set("REDIS_TEST","test for redis with python")

执行代码后到redis可视化界面查看如下
在这里插入图片描述

2. 取出数据

取出代码如下

# 获取键值对
value = redis_client.get("REDIS_TEST")
print(value)

执行代码后控制台打印如下
在这里插入图片描述

3. 关闭资源

操作结束后,关闭资源,避免资源浪费

# 关闭连接
redis_client.close()

4. 完整示例代码

连接redis并存取数据的完整代码如下

# 引入Redis库
import redis# 连接运行的redis服务,host为Redis服务的ip地址,也可以是url链接
# redis_client = redis.StrictRedis(host="127.0.0.1", port=6379, db=0)
# 如需密码
redis_client = redis.StrictRedis(host="127.0.0.1", port=6379, db=0, password="12345")# 设置键值对
redis_client.set("REDIS_TEST","test for redis with python")# 获取键值对
value = redis_client.get("REDIS_TEST")
print(value)# 关闭连接
redis_client.close()

三、连接池(拓展)

当需要多个连接对象时,可通过连接池进行连接

1. 建立连接池

建立连接池代码如下

# 引入Redis库
import redis# 如需管理多个连接,可以使用连接池,ConnectionPool
# pool = redis.ConnectionPool(host="127.0.0.1", port=6379, db=0)
pool = redis.ConnectionPool(host="127.0.0.1", port=6379, db=0, password="12345")
redis_client = redis.Redis(connection_pool=pool)

2. 存取数据

存取数据代码

# 设置键值,存入Redis
redis_client.set("TEST_REDIS01","TEST FOR REDIS 01")# 获取键对应的值
value = redis_client.get("TEST_REDIS01")
print(value)

存入数据后在redis客户端查看内容
在这里插入图片描述
控制台打印结果如下
在这里插入图片描述

3. 关闭资源

关闭资源,避免资源浪费

# 先关闭连接
redis_client.close()# 再关闭连接池
pool.disconnect()

4. 完整示例代码

完整示例代码如下

# 引入Redis库
import redis# 如需管理多个连接,可以使用连接池,ConnectionPool
# pool = redis.ConnectionPool(host="127.0.0.1", port=6379, db=0)
pool = redis.ConnectionPool(host="127.0.0.1", port=6379, db=0, password="12345")
redis_client = redis.Redis(connection_pool=pool)# 设置键值,存入Redis
redis_client.set("TEST_REDIS01","TEST FOR REDIS 01")# 获取键对应的值
value = redis_client.get("TEST_REDIS01")
print(value)# 先关闭连接
redis_client.close()# 再关闭连接池
pool.disconnect()

四、示例代码下载

本文示例代码已上传至CSDN资源库
下载地址:Python Redis连接 存取数据 示例代码


感谢阅读,祝君暴富!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/31508.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数据中心:AI范式下的内存挑战与机遇

在过去的十年里,数据中心和服务器行业经历了前所未有的扩张,这一进程伴随着CPU核心数量、内存带宽(BW),以及存储容量的显著增长。这种超大规模数据中心的扩张不仅带来了对计算能力的急剧需求,也带来了前所未有的内存功率密度挑战&…

适合孩子学习用什么的落地灯?五款精品护眼大路灯分享

适合孩子学习用什么的落地灯?说到护眼落地灯,都会出现两种呼声:一种是认为是“智商税”,而另外一种则是妥妥的照明神器!护眼大路灯到底是哪种定义呢?贵的护眼灯一定好吗? 这么年,护…

区块链技术:重塑金融市场监管的新引擎

一、引言 随着金融市场的不断发展和创新,监管面临的挑战也日益严峻。传统的监管模式已难以满足现代金融市场的需要,而区块链技术的出现为金融市场监管带来了新的机遇。本文将探讨区块链技术在金融市场监管中的作用,以及它如何重塑监管模式&a…

深入研究websocket直播中signature这个参数怎么来的,模拟自己生成一个

上一节课我们已经找到了生成signature这个字段的代码位置,就是这个B函数,嗯......听起来好像有点奇怪,但是它确实叫B啊,笑死。不管了,看一下里面的逻辑是啥。 注意e参数的内容是: {"app_name":…

作业管理系统

摘 要 随着网络的发展,信息化时代的到来,在教学工作的过程中作用越来越明显,作业的及时发布,学生的及时提交,以及通过网上的批改和评分,都大大促进教学质量的发展,充分的利用网络来加强管理&am…

用类来实现输入和输出时间(时:分:秒)

编写程序: 运行结果: 程序分析: 这是一个很简单的例子。类Time中只有数据成员,而且它们被定义为公用的,因此可以在类的外面对这些成员进行操作。t1被定义为Time类的对象。在主函数中向t1对象的数据成员输入用户…

“一站式企业服务平台”的功能架构

为提升区域营商环境,为促进区域经济发展,实现资源高效配置,全国各区域政府及产业园区都越来越重视如何创新企业服务机制、提升企业服务水平,来保障区域内的企业稳定及帮扶企业高质量的发展。随着近年来大数据、人工智能等新一代信…

react项目中如何书写css

一:问题: 在 vue 项目中,我们书写css的方式很简单,就是在 .vue文件中写style标签,然后加上scope属性,就可以隔离当前组件的样式,但是在react中,是没有这个东西的,如果直…

【学一点儿前端】单页面点击前进或后退按钮导致的内存泄露问题(history.listen监听器清除)

今天测试分配了一个比较奇怪的问题,在单页面应用中,反复点击“上一步”和“下一步”按钮时,界面表现出逐渐变得卡顿。为分析这一问题,我用Chrome的性能监控工具进行了浏览器性能录制。结果显示,每次点击“上一步”按钮…

Mars3d实现汽车尾气粒子效果从汽车屁股开始发射效果

本身的汽车尾气粒子效果:在汽车模型的中间发射的↓↓↓↓↓↓↓↓↓↓↓ Mars3d实例中是使用transY偏移值实现汽车尾气粒子效果从汽车屁股开始发射效果: // 动态运行车辆的尾气粒子效果 function addDemoGraphic4(graphicLayer) {const fixedRoute new…

三星与SK海力士:以混合键合技术引领3D DRAM革新之路

在高速缓存内存(HBM)领域持续领跑的三星与SK海力士,正以混合键合技术为突破口,开启3D DRAM技术的新纪元。这一战略转型不仅预示着存储技术的深度革新,更体现了两大半导体巨头在提高集成度、优化性能与成本上的不懈追求…

如何恢复电脑硬盘删除数据?提供一套实用恢复方案

在数字化时代,电脑硬盘中存储的数据对于个人和企业来说都至关重要。然而,有时我们可能会不小心删除了一些重要文件,或者因为某种原因导致数据丢失。这时候,恢复硬盘上被删除的数据就显得尤为重要。本文将为您提供一套实用的电脑硬…

光电数鸡算法《java》

一:需求 题目:一条流水线有工位D1,D2,D3…D20,总共20个工位。 每个工位都装有一个光电计数器,每个工位都为本工位的计数减去前一个工位(第一个有数值的工位除外,不计算。) 计算规则:比如D1,D2都…

在自托管基础设施上使用 GitOps 部署 MinIO

基于MinIO Weaviate Python GitOps探索的见解,本文探讨了如何增强软件部署流程的自动化。 通过将 GitHub Actions 与 Docker Swarm 集成而产生的协同作用,以自托管基础架构的稳健性为基础,标志着 CI/CD 实践的关键进步。这种方法不仅利用了软…

Go语言开发框架GoFly已集成数据可视化大屏开发功能,让开发者只专注业务开发,本文指导大家如何使用

前言 框架提供数据大屏开发基础,是考虑当前市场软件应用有一大部分是需要把业务数据做出大屏,很多政府项目对大屏需求特别高,还有生产企业项目也对大屏有需求,没有提供基础规范的后台框架,在开发大屏需要很多时间去基…

Mentor Xpedition怎么切换中英文界面

1、Mentor Xpedition的Layout界面,切换中英文的方法如下图; 切换英文设置,设置系统环境变量:MGC_PCB_LANGUAGEEnglish,重新打开软件即可切换成中文界面; 如果想要在切换成中文,把标量值改为Chi…

万能引用与完美转发

万能引用与完美转发 万能引用完美转发完美转发的应用场景万能引用的一个小点 万能引用 注意&#xff1a;当&&出现在模板中时&#xff0c;不是右值引用&#xff0c;而是叫万能引用。比如下面的T&& t template<typename T> void PerfectForward(T&&a…

民宿在线预订系统

摘要 随着国家的发展&#xff0c;人们也更加重视自己的业余时间。在特定的假期或休闲时间外出度假已逐渐成为这个时代的趋势。在我国&#xff0c;随着经济的发展和城市居民物质生活水平的提高&#xff0c;旅游业也呈现出越来越受欢迎的趋势。同时随着人口的快速流动&#xff0…

代理网络基础设施 101:增强安全性、速度和可扩展性

编辑代理网络在现代网络架构中发挥着重要作用&#xff0c;充当管理和重新路由数据流的中介。它们处理的数据可以是各种类型&#xff0c;包括搜索查询和潜在的敏感客户信息&#xff0c;这凸显了它们在数据安全方面的作用。 然而&#xff0c;代理的好处不仅限于安全性。它们为用…

人工智能与生物信息组学 || 2. 非编码 RNA 与疾病关联分析 || 2.2 非编码 miRNA 与疾病关联关系预测

非编码 miRNA 与疾病关联关系预测 越来越多的研究表明&#xff0c;一个复杂疾病通常经由多个 miRNA 协同调控&#xff0c;一个 miRNA 通常参与多个疾病的发生发展过程。因此&#xff0c;预测 miRNA 与疾病的关联关系成为一个当前的研究热点。下面我们将探讨一种 miRNA 和疾病关…