Python redis 安装和使用介绍

python redis安装和使用

    • [一、Redis 安装](#一、Redis 安装)
    • [二、安装 redis 模块](#二、安装 redis 模块)
    • [二、使用redis 实例](#二、使用redis 实例)
      • 1.1、简单使用
      • 1.2、连接池
      • [1.3、redis 基本命令 String](#1.3、redis 基本命令 String)
        • [1.3.1、ex - 过期时间(秒)](#1.3.1、ex - 过期时间(秒))
        • [1.3.2、nx - 如果设置为True,则只有name不存在时,当前set操作才执行 (新建)](#1.3.2、nx - 如果设置为True,则只有name不存在时,当前set操作才执行 (新建))
        • [1.3.3 、setnx(name, value)](#1.3.3 、setnx(name, value))
        • [1.3.4、 setex(name, time, value)](#1.3.4、 setex(name, time, value))

一、Redis 安装

安装教程链接如下:点击查看

1.1、Windows安装

本人本地是Windows系统,下载redis压缩包的地址为:点击下载地址:https://github.com/tporadowski/redis/releases,大家也可以直接下载我上传的安装包,是redis-x64-5.0.14.1版本.

选择合适的版本:

下载成功后,打开文件夹,内容如下:

最后是启动服务:

打开一个 cmd 窗口 使用 cd 命令切换目录到 C:\redis 运行:

复制代码
redis-server.exe redis.windows.conf

如果想方便的话,可以把 redis 的路径加到系统的环境变量里,这样就省得再输路径了,后面的那个 redis.windows.conf 可以省略,如果省略,会启用默认的。输入之后,会显示如下界面:

二、安装 redis 模块

上一步已经启动了服务,这时候要使用redis喽。

Python 要使用 redis,需要先安装 redis 模块:

复制代码
sudo pip3 install redis
或
sudo easy_install redis
或
sudo python setup.py install

或者在编辑器里导入哈,导入路径如下:

点击文件 -》设置 -》选择项目 python解释器 -》安装;

然后搜索要安装的redis模块,最后安装就可以喽,,,不如命令行方便哈

二、使用redis 实例

使用文档:点击查看使用文档

1.1、简单使用

复制代码
import redis   # 导入redis 模块

r = redis.Redis(host='localhost', port=6379, decode_responses=True)   
r.set('name', 'runoob')  # 设置 name 对应的值
print(r['name'])
print(r.get('name'))  # 取出键 name 对应的值
print(type(r.get('name')))  # 查看类型

最后结果如下:

1.2、连接池

redis-py 使用 connection pool 来管理对一个 redis server 的所有连接,避免每次建立、释放连接的开销。

默认,每个Redis实例都会维护一个自己的连接池。可以直接建立一个连接池,然后作为参数 Redis,这样就可以实现多个 Redis 实例共享一个连接池。

复制代码
import redis    # 导入redis 模块

pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
r = redis.Redis(host='localhost', port=6379, decode_responses=True)   
r.set('name', 'runoob')  # 设置 name 对应的值
print(r.get('name'))  # 取出键 name 对应的值

1.3、redis 基本命令 String

set(name, value, ex=None, px=None, nx=False, xx=False)

在 Redis 中设置值,默认,不存在则创建,存在则修改。

参数:

  • ex - 过期时间(秒)
  • px - 过期时间(毫秒)
  • nx - 如果设置为True,则只有name不存在时,当前set操作才执行
  • xx - 如果设置为True,则只有name存在时,当前set操作才执行
1.3.1、ex - 过期时间(秒)

到了过期时间,键对应的的值就变成None

复制代码
import redis

pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
r = redis.Redis(connection_pool=pool)
r.set('food', 'mutton', ex=3)    # 这是秒,key是"food" value是"mutton" 将键值对存入redis缓存
#r.set('food', 'beef', px=3) # 这是毫秒
print(r.get('food'))  # mutton 取出键food对应的值
1.3.2、nx - 如果设置为True,则只有name不存在时,当前set操作才执行 (新建)
复制代码
import redis

pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
r = redis.Redis(connection_pool=pool)
print(r.set('fruit', 'watermelon', nx=True))    # True--不存在
# 如果键fruit不存在,那么输出是True;如果键fruit已经存在,输出是None
1.3.3 、setnx(name, value)

设置值,只有name不存在时,执行设置操作(添加)

1.3.4、 setex(name, time, value)

设置值

参数:

time - 过期时间(数字秒 或 timedelta对象)

复制代码
import redis
import time

pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
r = redis.Redis(connection_pool=pool)
r.setex("fruit2", 5, "orange")
time.sleep(5)
print(r.get('fruit2'))  # 5秒后,取值就从orange变成None
相关推荐
云泽野17 分钟前
【Java|集合类】list遍历的6种方式
java·python·list
二进制person1 小时前
Java SE--方法的使用
java·开发语言·算法
OneQ6661 小时前
C++讲解---创建日期类
开发语言·c++·算法
IMPYLH2 小时前
Python 的内置函数 reversed
笔记·python
码农不惑2 小时前
2025.06.27-14.44 C语言开发:Onvif(二)
c语言·开发语言
Coding小公仔3 小时前
C++ bitset 模板类
开发语言·c++
KK溜了溜了4 小时前
JAVA-springboot 整合Redis
java·spring boot·redis
小赖同学啊4 小时前
物联网数据安全区块链服务
开发语言·python·区块链
shimly1234564 小时前
bash 脚本比较 100 个程序运行时间,精确到毫秒,脚本
开发语言·chrome·bash