Python的Redis操作

本文介绍如何使用Python操作Redis数据库,包括安装Redis扩展库、连接Redis、使用连接池、执行Redis命令及利用管道批量操作等内容。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

一、安装Redis扩展库

   安装redis扩展库

pip install redis

二、使用python操作Redis

1、Redis和StrictRedis

redis扩展库提供Redis和StrictRedis两个类来实现Redis的命令操作。StrictRedis实现了官方的命令,Redis是它的子类,兼容老版本,扩展库没有实现select方法,但是可以通过连接时指定使用的库。

2、Redis的连接

  1、简单连接
    导入redis,创建Redis对象,所有命令行下的命令在代码中都是Redis对象的方法,比如:set()方法对应Redis命令中的set方法。
  2、连接池
    多个redis对象使用同一个连接池进行连接,避免了多次连接、断开等操作的系统开销
  3、使用管道(pipeline)
    (1)可以记录多个操作,然后一次将操作发送至数据库,避免了多次向服务器发送少量的数据
    (2)多个操作可以依次进行保存,然后发送,也可以进行连贯操作

常用的连接举例:

简单连接:

from redis import StrictRedis

redis = StrictRedis(host='localhost',port=6379,db=0,password="密码")

连接池连接:

from redis import StrictRedis,ConnectionPool

pool = ConnectionPool(host='localhost',port=6379,db=0,password="密码")

redis = StrictRedis(connection_pool=pool)

上面我们传入了Redis的地址(localhost)、运行端口(6379)、使用的数据库(0)、数据库的密码等信息。

 

4、在开发中Redis的应用

在项目的初始化部分创建redis连接池,官方推荐使用StrictRedis方法,当使用了连接池,初始化设置都需要通过ConnectionPool传入参数,设置了decode_responses,默认存入取出自动编码解码,也就是以str存入,str取出,存入int也会被转为str

pool_my1 = redis.ConnectionPool(host=config.REDIS_HOST,port='6379',db=1,decode_responses=True)

my1_redis = redis.StrictRedis(connection_pool=pool)

pool_my2 = redis.ConnectionPool(host=config.REDIS_HOST,port='6379',db=2,decode_responses=True)

my2_redis = redis.StrictRedis(connection_pool=pool)

设置redis的键和值

key = f'自定义+具有标志性的名称'

my1_redis.set(key,1,ex = 60 * 60*24)#有效期一天

Redis Pttl 命令:以毫秒为单位返回 key 的剩余过期时间。

expire = int(my1_redis.pttl(key)/1000)

my1_redis.set(key,2,ex = expire)#有效期为key的剩余过期时间

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值