
Python神器合集:让编码更高效!
文章平均质量分 93
打造一些实用的辅助工具,让开发变得更简单。
重试、超时装饰器、excel、时间工具类、工厂模式封装webhook机器人、SQLAlchemy 封装、异步 http 快捷客户端、异步装饰器等。
忆想不到的晖
好的代码是一种艺术,而不是一种技术
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
基于Pandas库封装Excel工具类
在Python中,我们可以使用pandas库来读写和处理Excel文件。但是,为了更方便和快速地操作Excel文件,我们可以封装一个Excel工具类,提供常用的读写操作方法,以提高开发效率。原创 2025-02-25 16:16:34 · 518 阅读 · 0 评论 -
基于Pydantic封装的通用模型在API请求验证中的应用
Pydantic 是一个用于数据验证和解析的流行库,经常被用于 FastAPI 和其他现代 Python 项目中。在处理 API 请求时,我们经常需要对请求参数进行有效性检查,例如日期范围、分页和排序等。在本文中,我们将介绍如何在 Pydantic 中使用 Mixin 和组合模式来实现这些功能,并讨论它们的优缺点。原创 2025-02-25 16:05:33 · 57 阅读 · 0 评论 -
Python工厂模式封装Webhook群聊机器人
企业存在给 特定群组 自动推送消息的需求,比如:监控报警推送、销售线索推送、运营内容推送等。 你可以在群聊中添加一个自定义机器人,通过服务端调用 webhook 地址,即可将外部系统的通知消息即时推送到群聊中。原创 2025-02-25 15:58:35 · 80 阅读 · 0 评论 -
Python 同、异步HTTP客户端封装:性能与简洁性的较量
引入异步编程趋势:Python的异步编程正变得越来越流行。在过去,同步的HTTP请求已经不足以满足对性能的要求。异步HTTP客户端库的流行:目前,有许多第三方库已经实现了异步HTTP客户端,如aiohttp和httpx等。然而,异步语法使得代码变得更加冗长,导致缩进增多,降低了代码的可读性和简洁性。封装异步HTTP客户端:为了简化异步HTTP请求的代码,我们需要封装一个常用的HTTP客户端,以实现业务中常见的功能,并提供更简洁的接口。在这篇博客中,我将使用aiohttp库来进行封装异步客户端。原创 2023-09-28 18:45:06 · 826 阅读 · 0 评论 -
同步、异步无障碍:Python异步装饰器指南
Python异步开发已经非常流行了,一些主流的组件像MySQL、Redis、RabbitMQ等都提供了异步的客户端,再处理耗时的时候不会堵塞住主线程,不但可以提高并发能力,也能减少多线程带来的cpu上下文切换以及内存资源消耗。但在业务开发的时候一些第三方库没有异步的处理方式,例如OSS、CV、其他第三方提供的SDK以及自己封装的函数有耗时等,此时还是需要借助线程来加速,再异步中就不会堵塞主线程,因此封装一个异步装饰器可以更好的处理异步,让代码更简洁。看输出结果可以发现在同步函数使用直接使用线程池。原创 2024-04-29 14:10:04 · 1229 阅读 · 0 评论 -
Python异步Redis客户端与通用缓存装饰器
通过 redis-py 简易封装一个异步的Redis客户端,然后主要讲解设计一个支持各种缓存代理(本地内存、Redis等)的缓存装饰器,用于在减少一些不必要的计算、存储层的查询、网络IO等。原创 2024-04-29 14:02:53 · 1382 阅读 · 0 评论 -
SQLAIchemy 异步DBManager封装-01入门理解
SQLAlchemy 是一个强大的 Python SQL 工具包和对象关系映射(ORM)系统,是业内比较流行的ORM,设计非常优雅。随着其2.0版本的发布,SQLAlchemy 引入了原生的异步支持,这极大地增强了其在处理高并发和异步I/O场景下的能力。通过结合像greenlet、gevent这样的协程库,SQLAlchemy 使得异步数据库操作成为可能,从而提高了应用程序的性能和响应速度。原创 2024-04-17 14:47:50 · 1714 阅读 · 1 评论 -
SQLAIchemy 异步DBManager封装-02熟悉掌握
在上一篇文章中我们深入讨论了SQLAlchemy异步DBManager整体的封装结构与思路。详细地介绍了如何封装添加和批量添加的操作方法,并通过实际示例进行了演示。SQL 全称是结构化查询语言,无疑查询是最复杂的部分。因此,在这篇文章中,我将详细介绍如何封装通用的数据库查询方法,并通过具体的示例来讲解这一过程,使得这一复杂的任务变得更为简单。原创 2024-04-17 14:51:30 · 1305 阅读 · 0 评论 -
SQLAIchemy 异步DBManager封装-03得心应手
SQLAIchemyManager 设计用于初始化数据库配置信息BaseOrmTable、TimestampColumns、BaseOrmTableWithTS 设计通用库表映射类,一些主键id,时间戳字段让子类继承共享,以及 to_dict 方法将对象属性转成字典transaction 上下文管理器(事务会话)便捷的进行事务处理with_session 装饰器复用开启事务会话 session 操作,减少冗余代码,没有 session 则动态的构造 session,兼容整体事务会话。原创 2024-04-17 14:53:08 · 1561 阅读 · 0 评论