python操作redis数据库

本文介绍如何使用Python操作Redis数据库,包括安装redis模块、连接数据库、字符串操作、列表操作、集合操作、哈希操作、事务操作及发布订阅功能。

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

python操作数据库,首先需要安装redis模块

pip install redis

然后我们新建一个文件,写入代码:

# encoding: utf-8
from redis import Redis

# 如果需要别的机器连接redis的话,只需要将host参数改为相应的ip地址就行了
# password参数,只有在redis的文件中配置了密码,才使用这个参数。
cache = Redis(host='127.0.01',port=6379,password='111111')

这样,我们就成功的连接上了redis数据库。

  1. 操作字符窜:
# 1. 操作字符窜
#           key        value  过期时间,可选参数,默认为永久
cache.set('username','xujin',ex=60)
print(cache.get('username'))
# cache.delete('username')  # 删除操作

然后运行文件,就能呢个得到我们设置的username的值了。我们也可以在终端连接redis,看一下我们是否真的成功的设置了一个值。

在这里插入图片描述

可以看到,我们在redis中成功的获取到了我们设置的username的值。

同样我们还可以执行其他的一些操作。

cache.set('count',1)  # 设置一个值为1
print(cache.get('count'))
cache.incr('count')   # 给这个值自增1
print(cache.get('count'))
cache.decr('count')   # 给这个值自减1
print(cache.get('count')) 
  1. 列表的操作
# 2. 操作列表
cache.lpush('languages','python')
cache.lpush('languages','java')
cache.lpush('languages','php')

print(cache.lrange('languages',0,-1))
  1. 集合的操作
# 3. 操作集合
cache.sadd('team','zhang')
cache.sadd('team','li')
cache.sadd('team','huang')
print(cache.smembers('team'))
  1. 哈希操作
# 4. 哈希操作
cache.hset('person','name','xujin')
cache.hset('person','age','18')
cache.hset('person','weight','100')
print(cache.hgetall('person'))
  1. 事务操作
# 5. 事务操作
pip = cache.pipeline() # 开启一个事务
pip.set('username','xujin')
pip.set('password','111111')
pip.execute()    # 执行这个事务
  1. 订阅和发布
    实现这个功能我们需要两个文件。

在一个文件中订阅消息

# 6. 发布与订阅

# 订阅功能
from redis import Redis

cache = Redis(host='127.0.01',port=6379,password='111111')

ps = cache.pubsub() # 实例化一个对象
ps.subscribe('email')  # 订阅‘email’这个频道
while True: # 死循环
    for item in ps.listen():  # 放在死循环中监听
        print(item)

然后在另外一个文件中发布消息:

from redis import Redis

cache = Redis(host='127.0.0.1',port=6379,password='111111')

# 向email频道发布3条消息
for i in range(3):
    cache.publish('email','xxx@qq.com')

然后我们先运行订阅消息的那个文件,因为那是一个死循环,文件就会被一直运行。然后运行发布消息的那个文件。我们在订阅消息文件的控制台就能后看到我们所发布的信息了。

这里只是列出了一些比较常用的操作,其他的操作和用命令操作差不多的,只需要在实例化的对象的后面.操作命令就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值