这里分享的是 Python 潮流周刊第 56 期,原文发布于 2024-06-15。我们的付费专栏内容在发布一年后会免费开源,不少内容依然值得回看,愿大家读有所获。点击文末“阅读原文”,体验更佳。
本期分享了 12 篇文章,12 个开源项目。
🦄文章&教程[1]
1、给 NumPy 2.0 实现更快速的字符串函数[2]
NumPy 2.0 即将发布,这是 2006 年以来的第一个大版本。作者介绍了他们如何重新设计它的字符串函数(isalpha、add、find 和 startswith),解释了它们的执行原理,并做出了性能提升的统计。

2、Python 中的 __pycache__ 文件夹是什么?[3]
在项目文件中,你是否留意过突然出现的
__pycache__ 文件夹,它是干嘛的,什么情况下生成的? 这篇文章详细介绍了它的作用、文件夹里的内容、生成的时机、如何递归删除、如何防止创建它、如何读取/执行和反编译缓存的字节码等。
3、CPython 垃圾回收:内部机制和实现算法[4]
CPython 如何实现内存管理的(包括引用计数和垃圾回收)?这是深度解读 CPython 解释器系列的最新一篇,分析了引用计数和分代垃圾回收的实现原理,研究了核心的数据结构、算法和源码,以及最新移除 GIL 时对内存管理的修改。
4、从零开始搭建自己的相似图片搜索引擎[5]
介绍了如何使用向量嵌入、向量数据库 qdrant 和 OpenAI 的 CLIP 模型,从零开始搭建一个图片搜索引擎。文中还用了 scrapy+selenium 爬取网上图片,使用 Flask 开发了简单的操作页面。
5、使用 Pydantic Logfire 满足你的日志记录需求[6]
Pydantic 团队最近推出了一个新的日志记录工具 LogFire,除了简单打印日志外,它可以跟踪和分析程序的运行信息,记录 FastAPI 的请求参数和返回值,收集异常计数、连接数和内存使用情况等指标,看起来非常好用!
6、FastAPI 深度揭秘:高效 Web 开发指南[7]
一个关于 FastAPI 的专栏,从基础到进阶,全面介绍 FastAPI 的使用。
7、通过用 Python 实现 HTTP 服务器来理解它[8]
作者用 Python 实现一个简单的 HTTP 服务端,以此来理解它的工作原理,介绍了控制请求、处理请求、发送响应等环节,以及所涉及的各项知识点。
8、我对“Excel 里的 Python”的看法[9]
微软在去年推出了“Python in Excel”预览版,好不好用呢?文章出自xlwings 库和《Python for Excel》的作者,介绍了他深度使用后的一些看法,认为这不是 VBA 的替代品而是 Excel 公式的替代品、将 Jupyter 笔记本单元格集成到 Excel 网格是个错误、等等。
9、用 Python 将卷曲文本的图像提取成 PDF[10]
照片中的书页有一定程度的卷曲,如何将文本内容提取成 PDF 文件?作者用“cubic sheet”模型作页面去畸变,用 OpenCV+PIL 实现文本提取。8 年前的文章,代码已开源在page_dewarp[11],已收获 1.4K star。
10、Python Celery 的缺陷[12]
Celery 是广泛使用的分布式任务队列,但作者认为它存在诸多问题,文章讨论了三类:缺少或未实现的功能、有问题的默认行为、可观察性不足。
11、事件驱动的 Ansible,是什么、为什么以及如何使用?[13]
Ansible 是用 Python 开发的自动化工具,常用于网络配置管理和应用部署等运维场景。文章介绍了它最新的 Rulebook 特性,可从多个事件源获取事件通知,从而触发某些操作。
12、我国出版的 Python 教材几乎都有基本概念错误[14]
文章称很多 Python 教材套用其它语言的知识框架,导致出现基本概念的错误,如变量和赋值。学校中使用的 Python 教材都是哪些书啊?有没有在校学生分享下教材里的错误呢?(分享自@老不老)(附:Python 畅销书也有一些过时的表述,见 Python 已经支持中文变量名啦![15])
🐿️项目&资源[16]
1、WeasyPrint:非常棒的工具,将 Web 生成 PDF 文档[17]
可将简单的 HTML 页面变成华丽的统计报告、发票、票据、书籍等。可读取普通文件、HTTP、FTP 和数据 URI。(star 6.8K)
2、oxo:现代的安全扫描编排器[18]
一个安全扫描框架,可查找漏洞并执行侦察、枚举、指纹识别等操作。
3、jupyterlab-desktop:JupyterLab 桌面版,基于 Electron[19]
JupyterLab 的跨平台桌面应用程序,支持 Windows、Mac 和 Linux,使用简单。(star 3.5K)

4、teo:模式驱动的 Web 服务端框架[20]
模式驱动的 Web 服务端框架。服务端 API 是 Rust、Node.js 和 Python 的原生 API,受 GraphQL 和 Prisma 启发,自动数据库迁移。(star 1.1K)
5、aiosql:Python 中的简单 SQL[21]
将 SQL 视为代码,写在“.sql”文件中,可加载到 Python 程序中作为函数调用,重用性高,可集中管理维护。(star 1.3K)
6、thread:AI 驱动的 Python 笔记本,使用 React 构建[22]
将 OpenAI 的代码解释器与 Python Notebook 开发环境结合,除常规功能外,还可用自然语言生成单元格、编辑代码、提问和修复 bug。
7、OpenRecall:Windows Recall 的开源替代[23]
Windows Recall 和 Limitless Rewind.ai 的开源替代,隐私优先,支持 Windows、macOS 和 Linux。定期记录屏幕截图,分析其文本和图像,让你可通过语义搜索,快速查找信息和回看浏览记录。(star 1.3K)
8、requests-futures:使用 Futures 实现的异步 Python HTTP Requests[24]
requests 不支持异步,这个库为它加上concurrent.futures 的异步实现。(star 2.1K)
9、websocket-client:Python 的 WebSocket 客户端[25]
提供对 WebSocket 低级 API 的访问,实现了 WebSocket 协议的 hybi-13 版本。当前不支持 RFC 7692 中的 permessage-deflate 扩展。(star 3.5K)
10、Freeway:WiFi 渗透测试与审计工具[26]
用 Python 实现的 WiFi 渗透工具,帮助白帽黑客和测试人员审计和保护家庭及企业的网络。仅支持 Linux 系统,网卡需支持监视器模式和帧注入。
11、cibuildwheel:以最少的配置为所有平台构建 Python wheel[27]
在 CI 服务器上运行,可构建和测试你的 wheel 包,目前支持 GitHub Actions、Azure Pipelines、Travis CI、AppVeyor、CircleCI 和 GitLab CI。(star 1.8K)
12、超过 6000 份免费的速查表[28]
这是一个专门收集速查表(Cheat Sheet)的网站,分为编程、软件、商业与营销、教育、家庭与健康、游戏与爱好等类别。其中 Python 分类下有 446 份,是所有类别中最多的。

🐧 往年回顾[29]
Python潮流周刊#6:Python 3.12 有我贡献的代码![30] (2023.06.10)
[1] 🦄文章&教程: https://xiaobot.net/p/python_weekly
[2] 给 NumPy 2.0 实现更快速的字符串函数: https://labs.quansight.org/blog/numpy-string-ufuncs
[3] Python 中的 pycache 文件夹是什么?: https://realpython.com/python-pycache/
[4] CPython 垃圾回收:内部机制和实现算法: https://blog.codingconfessions.com/p/cpython-garbage-collection-internals
[5] 从零开始搭建自己的相似图片搜索引擎: https://juejin.cn/post/7377632288676839439
[6] 使用 Pydantic Logfire 满足你的日志记录需求: https://kadermiyanyedi.medium.com/fire-up-your-logging-needs-with-logfire-6330d7a08dfe
[7]
FastAPI 深度揭秘:高效 Web 开发指南: https://juejin.cn/column/7379166365972955146
[8] 通过用 Python 实现 HTTP 服务器来理解它: https://muhammadraza.me/2024/building-http-server/
[9] 我对“Excel 里的 Python”的看法: https://www.xlwings.org/blog/my-thoughts-on-python-in-excel
[10] 用 Python 将卷曲文本的图像提取成 PDF: https://mzucker.github.io/2016/08/15/page-dewarping.html
[11] page_dewarp: https://github.com/mzucker/page_dewarp
[12] Python Celery 的缺陷: https://docs.hatchet.run/blog/problems-with-celery
[13] 事件驱动的 Ansible,是什么、为什么以及如何使用?: https://anweshadas.in/event-driven-ansible-what-why-and-how/
[14] 我国出版的 Python 教材几乎都有基本概念错误: https://zhuanlan.zhihu.com/p/703141066
[15] Python 已经支持中文变量名啦!: https://pythoncat.top/posts/2021-01-13-books
[16] 🐿️项目&资源: https://xiaobot.net/p/python_weekly
[17] WeasyPrint:非常棒的工具,将 Web 生成 PDF 文档: https://github.com/Kozea/WeasyPrint
[18] oxo:现代的安全扫描编排器: https://github.com/Ostorlab/oxo
[19] jupyterlab-desktop:JupyterLab 桌面版,基于 Electron: https://github.com/jupyterlab/jupyterlab-desktop
[20] teo:模式驱动的 Web 服务端框架: https://github.com/teodevgroup/teo
[21] aiosql:Python 中的简单 SQL:
https://github.com/nackjicholson/aiosql
[22] thread:AI 驱动的 Python 笔记本,使用 React 构建: https://github.com/squaredtechnologies/thread
[23] OpenRecall:Windows Recall 的开源替代: https://github.com/openrecall/openrecall
[24] requests-futures:使用 Futures 实现的异步 Python HTTP Requests: https://github.com/ross/requests-futures
[25] websocket-client:Python 的 WebSocket 客户端: https://github.com/websocket-client/websocket-client
[26] Freeway:WiFi 渗透测试与审计工具:
https://github.com/FLOCK4H/Freeway
[27] cibuildwheel:以最少的配置为所有平台构建 Python wheel: https://github.com/pypa/cibuildwheel
[28] 超过 6000 份免费的速查表: https://cheatography.com/
[29] 🐧 往年回顾: https://xiaobot.net/p/python_weekly
[30] Python潮流周刊#6:Python 3.12 有我贡献的代码!: https://pythoncat.top/posts/2023-06-10-weekly6
