Python redis 安装和使用介绍

python redis安装和使用

    • 一、Redis 安装
      • 1.1、Windows安装
    • 二、安装 redis 模块
    • 二、使用redis 实例
      • 1.1、简单使用
      • 1.2、连接池
      • 1.3、redis 基本命令 String
        • 1.3.1、ex - 过期时间(秒)
        • 1.3.2、nx - 如果设置为True,则只有name不存在时,当前set操作才执行 (新建)
        • 1.3.3 、setnx(name, 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 redispool = 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 redispool = 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 timepool = 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

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

如若内容造成侵权/违法违规/事实不符,请联系一条长河网进行投诉反馈,一经查实,立即删除!

相关文章

华为、思科、新华三,三大厂商认证到底选择哪一个?

在计算机网络行业,华为、思科和新华三的认证被广泛认可,成为从业者提升技能和职业竞争力的重要凭证。 然而,面对这三大厂商的认证,很多人感到困惑,不知道该选择哪一个。 本文将详细介绍这三大认证体系,帮助…

【学术会议征稿】第四届电子信息工程与计算机技术国际学术会议(EIECT 2024)

第四届电子信息工程与计算机技术国际学术会议(EIECT 2024) 2024 4th International Conference on Electronic Information Engineering and Computer Technology 随着科学技术的高速发展,计算机技术革新日新月异,其智能化、网络…

Spring中存储Bean的常见注解

目录 IoC & DI IOC(控制反转)详解 依赖注入的三种方式 IoC & DI IoC: Inversion of Control (控制反转), 也就是说 Spring 是⼀个"控制反转"的容器. 控制反转:也就是控制权反转. 什么的控制权发⽣了反转? 获得依赖对…

计算机毕业设计污染物文献共享数据库管理系统网站开发与实现

计算机毕业设计:污染物文献共享数据库管理系统网站开发与实现 1. 项目背景 随着环境问题日益严峻,对污染物的研究变得尤为重要。然而,在学术界和工业界之间存在着信息孤岛现象,即大量的研究成果被分散在不同的数据…

每日OJ题_牛客_除2!(贪心+堆)

目录 牛客_除2!(贪心堆) 解析代码 牛客_除2!(贪心堆) 除2!_牛客题霸_牛客网 解析代码 弄一个堆模拟一下,用到贪心的思想,记得开long long,否则可能0分。 …

Python中的异步编程:从基础知识到高级应用

随着互联网应用的不断发展,高并发和高性能成为越来越多开发者关注的重点。Python 3.5引入了asyncio库和async/await语法,使得异步编程变得更加简洁和高效。本文将详细介绍Python中的异步编程,从基础知识到高级应用,帮助你掌握这一…

【AI大模型】LLM主流开源大模型介绍

目录 🍔 LLM主流大模型类别 🍔 ChatGLM-6B模型 2.1 训练目标 2.2 模型结构 2.3 模型配置(6B) 2.4 硬件要求 2.5 模型特点 2.6 衍生应用 🍔 LLaMA模型 3.1 训练目标 3.2 模型结构 3.3 模型配置(7B) 3.4 硬件…

ROS第四梯:ROS项目中添加自定义类

第一步,ROS项目结构介绍 工作空间中包含一个名为pcl_ros_test的功能包,其中main.cpp是原有项目自带的,接下来以CommonAlg自定义类添加为例进行介绍。 第二步:头文件CommonAlg.h创建和编写,并保存在include/pcl_ros_tes…

springcloud整合nacos、sentinal、springcloud-gateway,springboot security、oauth2总结

源码地址:下载地址 使用该架构的项目地址:下载地址 下面教大家整合nacos、sentinal、springcloud-gateway,springboot security、oauth2做一个分布式架构 1、第一步整合nacos 1、下载alibaba的nacos 下载地址,然后使用单机模式启动nacos sh startup.sh -m standalon…

828华为云征文 | 云服务器Flexus X实例,搭建上线前后端项目

828华为云征文 | 云服务器Flexus X实例,搭建上线前后端项目 项目搭建 演示使用华为云服务器Flexus X实例搭建上线前后端项目黑马vue电商后台管理系统 项目GitHub链接:https://github.com/Minori-ty/vue_shop.git 1、购买华为云 Flexus X 实例 Flexus云服…

搜索小车运动最短路径python代码实现

一、实验任务 场地中正方格代表障碍物,选取小车运动起点和终点。编程探究小车从起点运动到终点,总共有几种可行的路径(路径不含重叠部分),同时找出最短路径并可视化。 二、实验思路 把场地抽象化为69的平面矩阵&…

基于Linux系统离线安装oracle数据库

注意事项: 在安装的时候多次涉及root用户和oracle用户的切换,请注意区分,本文已明显 一、环境准备 1、关闭防火墙 [rootlocalhost ~]# systemctl stop firewalld2、 禁用NetworkManager服务(非必须) [rootlocalhost …

4 路 4-20mA 电流/0-10V 电压转光纤

型号:MS-F155-AM 功能概述 MS-F155-AM 是将 4-20mA 电流转为光纤信号的模块,分发送和接收两个设备。发送模块将电流或者电压信号转变为光信号,通过光纤传输,接收端将光信号还原为电流或者电压信号。可以延长通信距离,最…

从零开始讲DDR(1)——DDR简介

一、DDR简介 DDR SDRAM(Double Data Rate Synchronous DYNAMIC RAM)中文名是:双倍数据速率同步动态随机存储器。 传统的SDRAM只在时钟信号的上升沿传输数据,而DDR可以同时在时钟的上升沿和下降沿传输数据,因此在同样的…

零信任安全架构--持续验证

随着网络安全威胁的不断演变,传统的“信任但验证”安全模式已无法应对现代复杂的攻击。零信任安全架构(Zero Trust Architecture, ZTA)应运而生,作为一种全新的安全理念,它彻底改变了企业的网络安全防护方式。核心思想…

windows查找端口号被占用

在很多开发的时候,可能端口号有被占用的情况,导致项目打不开。 用下面这个命令即可: 比如我的3000端口被占用,我找找哪个进程在占用我的3000端口号

JAVA惊喜连连无限可能沉浸式盲盒商城系统小程序源码

🎁惊喜连连,无限可能!沉浸式盲盒商城系统,等你来探索🔍 🎉【开篇:盲盒热潮,席卷而来】🎉 在这个充满未知与惊喜的时代,盲盒文化正以前所未有的速度席卷全球…

Vue学习记录之五(组件/生命周期)

一、组件 在每一个.vue文件可以看作是一个组件,组件是可以复用的,每个应用可以看作是一棵嵌套的组件树。 在Vue3中,组件导入以后即可直接使用。 二、组件的生命周期 生命周期就是从诞生(创建)到死亡(销毁) 的过程。 Vue3 组合式API中(se…

Rocky 8.7 操作系统 安装部署 MySQL 5.7.32 验证测试

一、安装部署 主从服务器都需提前安装部署MySQL 5.7.32 数据库软件,本次选择采用二进制安装。 配置主从,要注意调整主备库server_id不能保持一致。 主库修改/etc/my.cnf文件,添加 server-id1log-binmysql-binbinlog-do-dbmsdbbinlog-ign…