python flask 操作 Redis,包含详细代码

基于 Python + Redis + Flask 的实时在线聊天室开发实战:高效消息推送与多用户支持 本文介绍了如何利用Python的Flask框架结合Redis构建一个实时在线聊天室。Flask提供轻量级Web支持,Redis实现高效消息队列和实时数据共享。项目通过WebSocket实现即时通信,利用Redis的发布/订阅功能进行消息推送。文章详细说明了环境搭建、代码实现(包括后端消息处理和前端界面),并提出了群聊/私聊扩展和消息持久化存储的优化方向。该方案为开发者提供了一个高效处理实时消息推送和多用户并发的解决方案。 阅读详情

使用 Flask 操作 Redis 可以通过安装 Redis 的 Python 库并在 Flask 中使用它来实现。
正式学习前,需要先确定 Redis 已安装并可正常运行
运行 redis-server.exe redis.windows.conf 启动 Redis 服务器
运行 redis-cli.exe ping 检查 Redis 服务器是否运行正常
运行 redis-cli.exe -h <host> -p <port> 连接 Redis 服务器

简单示例

安装 Redis Python 库:

pip install redis

在 Flask 中使用:

from flask import Flask
import redis

app = Flask(__name__)
redis_client = redis.Redis(host='localhost', port=6379, db=0)

@app.route("/")
def index():
    redis_client.set("name", "梦想橡皮擦")
    return redis_client.get("key").decode()

if __name__ == "__main__":
    app.run(debug=True)

运行代码之后,可查看 Redis 中已经成功写入数据。

python flask 操作 Redis,包含详细代码

python flask 操作 Redis 更多内容

操作 Redis 常见的方法还有

  • 增加数据:redis_client.incr("counter")

  • 获取数据:redis_client.get("key")

  • 设置数据:redis_client.set("key", "value")

  • 删除数据:redis_client.delete("key")

  • 存储列表:redis_client.lpush("list", "value1")

  • 获取列表:redis_client.lrange("list", 0, -1)

  • 存储字典:redis_client.hmset("dict", {"key1": "value1", "key2": "value2"})

  • 获取字典:redis_client.hgetall("dict")

使用 Redis 时,需要注意它的数据类型,Redis 支持多种数据类型,如字符串、列表、字典等。

通过 Flask 存储字符串、列表和字典

代码如下:

from flask import Flask, jsonify
import redis

app = Flask(__name__)
redis_client = redis.Redis(host='localhost', port=6379, db=0)

@app.route("/")
def index():
    # 设置字符串类型的数据
    redis_client.set("string_key", "Hello Redis")
    
    # 获取字符串类型的数据
    string_value = redis_client.get("string_key").decode()
    
    # 存储列表类型的数据
    redis_client.lpush("list_key", "item1", "item2", "item3")
    
    # 获取列表类型的数据
    list_value = redis_client.lrange("list_key", 0, -1)
    list_value = [item.decode() for item in list_value]
    
    # 存储字典类型的数据
    redis_client.hmset("dict_key", {"key1": "value1", "key2": "value2"})
    
    # 获取字典类型的数据
    dict_value = redis_client.hgetall("dict_key")
    dict_value = {k.decode(): v.decode() for k, v in dict_value.items()}
    
    # 返回响应
    return jsonify({
        "string_key": string_value,
        "list_key": list_value,
        "dict_key": dict_value
    })

if __name__ == "__main__":
    app.run(debug=True)

在代码中,我们定义了三种不同的数据类型,分别为字符串、列表和字典,并在 Flask 视图函数中存储和读取这三种数据类型。最后,使用 jsonify() 函数将所有数据类型的值作为 JSON 响应返回。

  • 使用 redis_client.set() 方法向 Redis 中存储了一个字符串类型的数据,该数据的键为 “string_key”,值为 “Hello Redis”。

  • 使用 redis_client.get() 方法读取存储在 Redis 中的字符串类型数据,并使用 decode 方法将字节类型数据转换为字符串类型。

  • 使用 redis_client.lpush() 方法向 Redis 中存储了一个列表类型的数据,该数据的键为 “list_key”,值为 [“item1”, “item2”, “item3”]。

  • 使用 redis_client.lrange() 方法读取存储在 Redis 中的列表类型数据,并使用 decode 方法将字节类型数据转换为字符串类型。

  • 使用 redis_client.hmset() 方法向 Redis 中存储了一个字典类型的数据,该数据的键为 “dict_key”,值为 {“key1”: “value1”, “key2”: “value2”}。

  • 使用 redis_client.hgetall() 方法读取存储在 Redis 中的字典类型数据,并使用字典推导式将字节类型数据转换为字符串类型。

运行代码效果图如下所示。

python flask 操作 Redis,包含详细代码

📢📢📢📢📢📢
💗 你正在阅读 【梦想橡皮擦】 的博客
👍 阅读完毕,可以点点小手赞一下
🌻 发现错误,直接评论区中指正吧
📆 橡皮擦的第 857 篇原创博客

👇 全网 6000+人正在学习的 爬虫专栏 👇👇👇👇

Python Flask的缓存机制优化 本文旨在为Flask开发者提供全面的缓存优化指南,涵盖从基础概念到高级优化的完整知识体系。Flask内置缓存机制的工作原理主流缓存后端的性能比较缓存策略的选择与实施实际项目中的优化技巧文章首先介绍缓存基础概念,然后深入Flask缓存实现,接着探讨高级优化策略,最后提供实战案例和工具推荐。: 缓存项的生存时间: 最近最少使用缓存淘汰算法: 缓存雪崩现象: 缓存预热智能化缓存策略: 基于机器学习预测缓存需求边缘缓存: 结合CDN实现地理分布式缓存实时缓存失效。 阅读详情

相关推荐

使用Flask框架调用Redis队列数据的方法

Flask是一个轻量级的Python Web框架,而Redis是一种高性能键值存储数据库。结合Flask和Redis可以实现高效的数据处理和存储。在本篇文章中,我们将介绍如何在Flask应用中调用Redis队列数据。通过上述步骤,你可以在Flask应用中调用Redis队列数据。你可以根据自己的需求扩展和修改代码,以适应特定的应用场景。在Flask应用中,可以使用config对象来配置应用。现在,我们可以定义一个路由来处理请求并调用Redis队列数据。最后,我们需要运行Flask应用。

HkPostscript的博客 374

python3之flask框架连接redis数据库

先复习下ubuntu安装redis的步骤 $ wget http://download.redis.io/releases/redis-4.0.8.tar.gz $ tar xzf redis-4.0.8.tar.gz $ ln -s redis-4.0.8 redis $ cd redis $ make $ make install 说明一下上面的操作: 1)下载Redis指定版本...

zhengwantong的博客 1万+

基于 Python + redis + flask 的在线聊天室

其中 load_user,是回调函数,将获取到的 user 对象存储到浏览器的 session 中,然后在调用 login_user 函数时,就会调用 load_user 来把真正需要登陆的用户设置到 session 中。最后还要注意的是,由于我们前面是使用 socketio 来启动的应用,因为 socketio 是异步 io,而我们的 scheduler 是阻塞运行的,所以需要在 socketio 中创建子线程来启动。当前的登陆,只要用户名是正确的,不会验证密码,直接登陆成功,现在来处理下密码校验功能。

神仙别闹的自留地 1430

Python项目Flask框架整合Redis

【代码】Python项目Flask框架整合Redis。

m0_58709145的博客 524

Python的Flask框架使用Redis做数据缓存的配置方法

Redis是一款依据BSD开源协议发行的高性能Key-Value存储系统。会把数据读入内存中提高存取效率。Redis性能极高能支持超过100K+每秒的读写频率,还支持通知key过期等等特性,所以及其适合做缓存。 下载安装 根据redis中文网使用wget下载压缩包 $ wget http://download.redis.io/releases/redis-3.0.5.tar.gz $ tar xzf redis-3.0.5.tar.gz $ cd redis-3.0.5 $ make 二进制文件编译完成后在src目录下。可以通过一下命令启动: $ src/redis-server 这

Quantum Espresso实战进阶:HSE混合泛函在能带计算中的精准应用

本文深入探讨了在Quantum Espresso中应用HSE混合泛函进行高精度能带计算的实战方法。针对传统DFT方法低估半导体带隙的问题,HSE通过混合精确交换能,显著提升计算精度。文章详细讲解了从输入文件配置、参数设置(如nqx网格、exxdiv_treatment)、到自洽与非自洽计算流程,以及结果可视化与对比的全过程,并提供了关键的调优与避坑指南,助力实现从PBE到HSE的精准进阶。

weixin_28363123的博客 226

Redis OM for Python 实战:用 Flask 构建 Redis 文档型 API

在person.pyPerson(主模型)和Address(嵌入式模型):python# 嵌入式地址模型(作为Person的字段)# 街道号码(必选,索引)# 单元号(可选,不索引)# 街道名称(必选,索引)# 城市(必选,索引)# 州/省(必选,索引)# 邮编(必选,索引)# 国家(必选,索引,默认英国)# 人员主模型# 名(必选,索引)# 姓(必选,索引)# 年龄(必选,正整数,索引)# 地址(必选,嵌入式模型)# 个人陈述(必选,支持全文搜索)

佑瞻的博客 1万+

AI 小说生成器本地部署完全指南

这篇文章介绍了本地部署AI小说生成器的完整指南,主要面向网文作者、内容创作者和AI爱好者。文章从环境搭建到创作实践,详细讲解了三种主流部署方案:Ollama(推荐新手)、LMStudio(图形界面)和text-generation-webui(高级定制)。内容涵盖硬件需求、系统架构、模型选择、API对接、提示词工程等关键技术环节,并提供了小说创作的特制提示词模板和参数调优建议。文章还讨论了长篇小说管理、多模型协作等进阶技巧,以及版权伦理等法律问题。最后推荐了相关工具资源和社区论坛,帮助读者实现安全、高效、可

珂珂可爱多 2265

flask使用redis

文章目录前言一、环境二、使用步骤1.安装redis1.下载2.运行2.安装并使用redis包1.安装2.使用运行 前言 有人会有疑问,不是已经连上了mysql数据库了吗,为什么还要用redis数据库?有时候用户访问网页的时候,会产生一些临时性的数据,如验证码等,如果使用mysql存储,那么还要另外新建一张表,还要定时清理表中的验证码,使用mysql操作太麻烦了。正好redis可以解决这个问题,下面通过生成验证码的例子来学习一下。 一、环境 python 3.7 flask 2.0.2 二、使用步骤 本篇

fresh_nam的博客 8437

3A之自动对焦(AF)算法:从Tenegrad到拉普拉斯的清晰度评价实战

本文深入解析自动对焦(AF)算法的核心——清晰度评价函数,通过实战对比Tenegrad、方差、能量梯度、Brenner和拉普拉斯五大经典算法的原理、代码实现与性能。文章详细阐述了各函数在计算速度、抗噪性和单峰性上的优劣,并提供了从仿真测试到硬件部署的优化策略,帮助开发者根据实际场景选择最合适的AF算法。

weixin_29281915的博客 313

excel wind插件使用_Python和wind的交互—在债券中的应用

个人认为学会了怎么用python和wind交互以及怎么用python处理Excel数据,就基本能替换日常很多琐碎的债券工作,还不用担心Excel某个值改变了导致整个报表都毁了。事实上在python调用wind函数和在Excel中调用函数一样简单,只要会基本的操作就够了。下面详细的介绍如何用python和wind进行交互。首先安装好python+pycharm+wind。因为python...

weixin_39863918的博客 5330

Python Flask-Redis 连接远程 Redis 的完整指南

在现代 Web 开发中,Redis 作为高性能的内存数据库,广泛应用于缓存、会话管理、消息队列等场景。结合 Flask 框架,开发者可以轻松实现与 Redis 的集成。本文将详细介绍如何使用 **Flask-Redis** 扩展连接远程 Redis 服务器,并通过代码示例演示其核心功能。

专注于与编程相关的知识内容分享 1162

ican项目四汽车零件智能测量

ican项目四汽车零件智能测量

weixin_72050316的博客 561

通过Flask将GET/POST请求转换成对Redis缓存库操作的方法

※目前所需要知道的是我从client端,做GET或者POST请求时,我的Flask请求参数会判断相应的请求参数对Redis做 写入/读取 操作。 ※这是我们所需要实现的大概情况,根据这个大概情况,我们心里就应该能够理解所需要的操作步骤分别是什么了。......

Insupport的博客 834

第十六篇:Camx IFE 、OPE 各 port口功能定义

需要注意的是,类似 CSLTFEPortIdRawDump 是没有downscale功能的,所以如果遇到fov不正确的问题,可以排除下TFE这边的 output port是否被接到了 CSLTFEPortIdRawDump 上面来。我们知道Camx 的IFE 、OPE有不少的output port,各个port是有哪些功能的呢?老一点的框架平台,采用的TEF、OPE。

233

机器人控制基础:电机编码器常见类型

电机编码器是测量电机位置、速度和方向的传感器,主要分为光电、磁性和旋转变压器三类。光电编码器精度高但需防尘,适用于伺服系统;磁性编码器耐环境性强,常用于汽车电机;旋转变压器适应极端环境,多用于军工领域。按信号类型可分为增量式(成本低)和绝对式(断电保留位置)。选型需综合考虑精度、环境适应性及成本。

start_up_go的博客 475

flask 操作redis

init.py文件 from flask import Flask from flask_sqlalchemy import SQLAlchemy from flask_session import Session import redis app = Flask(__name__) app.config.from_object('config') db = SQLAlchemy(app)...

ibaicaiyu'blog 1875

告别Python中间件!C#原生调用YOLOv11/v12:工业视觉检测零语言壁垒全流程

本文介绍了一种基于C#和ONNX Runtime的工业视觉检测解决方案,解决了传统YOLO模型在工业应用中面临的三大痛点:语言壁垒、性能损耗和模型更新困难。该系统采用三层架构设计,支持C#原生调用YOLO模型,无需中间件,性能损耗低于5%,满足工业产线30FPS+的实时性要求。文章详细阐述了环境搭建、模型导出规范、核心代码实现及工业级优化方案,提供可直接用于生产环境的完整流程,实现了训练与部署的解耦,显著降低了维护成本。该方案兼容主流YOLO版本,支持全平台部署,为工业视觉检测提供了高效可靠的C#集成方案。

这里只有干货:从 Modbus 通信到 MES 对接,从 YOLO 训练到工控机部署,带你搞定工业软件开发全流程。 187

Python之Flask将session放入到redis

"""" 请求刚进来session是空的,创建一个空字典,添加到local中 核心就是存储session的对象 app.open_session -->self.session_interface( RedisSessionInterface) """ from flask import Flask, json, session from flask_session import Re...

天道酬勤 2918

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

使用 Python Flask 与 Redis 构建缓存系统的完整示例

在现代 Web 应用中,缓存技术是提升系统性能的关键手段之一。Redis 作为高性能的内存数据库,常与 Flask 框架结合使用,实现数据缓存、会话存储、计数器等功能。本文将通过一个完整的 Python Flask 示例,演示如何使用 Redis 缓存数据,并分析其在实际开发中的应用场景。

专注于与编程相关的知识内容分享 1094

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Pulumi实战:使用Redis和Flask构建投票应用的详细步骤

Pulumi是一个强大的基础设施即代码工具,它允许开发者使用熟悉的编程语言来定义和部署云基础设施。本教程将带你完成使用Pulumi、Redis和Flask构建一个完整投票应用的全过程,从环境准备到应用部署,让你轻松掌握云原生应用开发的核心技能。 ## 📋 准备工作:环境搭建与工具安装 在开始构建投票应用之前,我们需要确保开发环境已经准备就绪。以下是必要的工具和依赖项: 1. **安装Pul

gitblog_00860的博客 971

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

python flask简单使用redis

from flask_redis_sentinel import SentinelExtension redis_sentinel = SentinelExtension() redis_client = redis_sentinel.master_for('mymaster') def create_app(conf_file): ... ... redis_sentinel.init_app(app) ... ... class Config(object): .

Jalen备忘录 1384

flask redis mysql_flask下redis的试用

redis是个很有趣的k-v数据库,它很好的照顾到了轻量级和速度两方面,今天试了一下redis的python客户端,看起来好像比mysql更简单的样子,因垂丝汀。首先安装redis,可以从官网上下载后make,因为我的ubuntu源自带redis,所以直接apt install redis-server就好了,然后vim /etc/redis/redis.confrequirepass设置成你的密...

weixin_32950005的博客 458

【Docker】Python Flask + Redis 练习

创建app.py

SwBack的博客 818

flask redis 存储数组

使用 Flask 和 Redis 存储数组的完整指南 在开发时,使用 Redis 作为缓存和数据存储解决方案是一个常见的需求。在这篇文章中,我们将讨论如何将数组存储在 Redis 中,并通过 Flask 框架来实现。接下来,我会为你提供一个简单的流程图及示例代码,以帮助你理解整个过程。 实现流程 我们将分为以下几个步骤: ...

weixin_28953369的博客 220

flask-redis使用总结

官方文档:https://pypi.org/project/flask-redis/ python-redis文档:https://redis-py.readthedocs.io/en/latest/ 本人自己封装的own-redis类 from flask_redis import FlaskRedis redis_client = FlaskRedis() class ...

weixin_43343144的博客 9569
上一篇: 基于python的二手房数据分析,思路+代码范例
下一篇: 深入解析,python合并多张图片成视频,可用于批量制作短视频
梦想橡皮擦
梦想橡皮擦 优质创作者: python技术领域 优质创作者: python技术领域 领域专家: Python技术领域 领域专家: Python技术领域
博客等级 码龄18年 33万+粉丝 3548原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

梦想橡皮擦

如有帮助,来瓶可乐

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值