锋盈数科-知识库 Logo
首页
软件开发
计算机基础
Hello Halo
新手必读
关于本知识库
登录 →
锋盈数科-知识库 Logo
首页 软件开发 计算机基础 Hello Halo 新手必读 关于本知识库
登录
  1. 首页
  2. 软件开发
  3. Python连接Redis(简单连接、连接池连接、存取数据示例)

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

0
  • 软件开发
  • 发布于 2024-08-19
  • 12 次阅读
黄健
黄健

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


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


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


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



文章目录

  • 一、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连接 存取数据 示例代码


感谢阅读,祝君暴富!

原文链接: https://hanshan.blog.csdn.net//article/details/139679086

标签: #Python 23 #redis 48 #软件开发 1171
相关文章

万字:支付“核心系统”详解 2024-11-02 15:33

专栏作者:隐墨星辰 \| 主编:陈天宇宙 这篇文章也尝试化繁为简,探寻支付系统的本质,讲清楚在线支付系统最核心的一些概念和设计理念。 虽然支付行业已经过了风头最劲的时光,但跨境支付仍然在蓬勃发展,每年依然有很多新人进入这个行业,这篇文章尝试为这些刚入行的新人提供一点帮助。 文章只介绍一些支付行业十几

资深支付架构师视角:实战从问题定义到代码落地的完整套路 2024-11-02 15:33

前言 今天从一个实际案例入手,介绍站在架构师的角度,如何识别并定义问题,提炼需求,技术方案选型,再到详细设计,最后利用AI的能力协助写出核心的代码,验证与调优。 解决问题存在一定的模式,也可以称之为框架,总结出自己的思考和解题框架,以后再碰到同类型的问题就可以如庖丁解牛一样容易。 很多年前,我写代码

Spring 实现 3 种异步接口 2024-10-18 09:07

大家好,我是苏三~ 如何处理比较耗时的接口? 这题我熟,直接上异步接口,使用 Callable、WebAsyncTask 和 DeferredResult、CompletableFuture等均可实现。 但这些方法有局限性,处理结果仅返回单个值。在某些场景下,如果需要接口异步处理的同时,还持续不断地

重学SpringBoot3-集成Redis(五)之布隆过滤器 2024-10-08 11:24

更多SpringBoot3内容请关注我的专栏:《SpringBoot3》 期待您的点赞👍收藏⭐评论✍ 重学SpringBoot3-集成Redis(五)之布隆过滤器 1. 什么是布隆过滤器? * 基本概念 适用场景 2. 使用 Redis 实现布隆过滤器 * 项目依赖 Redis 配置

设计模式第16讲——迭代器模式(Iterator) 2024-10-08 11:24

一、什么是迭代器模式 迭代器模式是一种行为型设计模式,它提供了一种统一的方式来访问集合对象中的元素,而不是暴露集合内部的表示方式。简单地说,就是将遍历集合的责任封装到一个单独的对象中,我们可以按照特定的方式访问集合中的元素。 二、角色组成 抽象迭代器(Iterator):定义了遍历聚合对象所需的方法

vue2路由和vue3路由区别及原理 2024-10-08 11:24

一、Vue2 与 Vue3 路由的区别 1. 创建路由实例方式的不同 Vue 2 中,通过 Vue.use() 注册路由插件,并通过 new VueRouter() 来创建路由实例。 import Vue from 'vue';import VueRouter from 'vue-router';i

目录

IT 外包服务商

  • 意见投递
  • zyf6619

软件开发应用

主菜单

  • 首页
  • 软件开发
  • 计算机基础
  • Hello Halo
  • 新手必读
  • 关于本知识库
Copyright © 2024 your company All Rights Reserved. Powered by Halo.