告别信息碎片,「Python潮流周刊」为你带来最优质的Python技术资讯

你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。另有电报频道作为副刊,补充发布更加丰富的资讯,欢迎关注。

本期分享了 12 篇文章,12 个开源项目,全文 2100 字。

🦄文章&教程

1、给 NumPy 2.0 实现更快速的字符串函数

NumPy 2.0 即将发布,这是 2006 年以来的第一个大版本。作者介绍了他们如何重新设计它的字符串函数(isalpha、add、find 和 startswith),解释了它们的执行原理,并做出了性能提升的统计。

2、Python 中的 __pycache__ 文件夹是什么?

在项目文件中,你是否留意过突然出现的__pycache__ 文件夹,它是干嘛的,什么情况下生成的? 这篇文章详细介绍了它的作用、文件夹里的内容、生成的时机、如何递归删除、如何防止创建它、如何读取/执行和反编译缓存的字节码等。

3、CPython 垃圾回收:内部机制和实现算法

CPython 如何实现内存管理的(包括引用计数和垃圾回收)?这是深度解读 CPython 解释器系列的最新一篇,分析了引用计数和分代垃圾回收的实现原理,研究了核心的数据结构、算法和源码,以及最新移除 GIL 时对内存管理的修改。

4、从零开始搭建自己的相似图片搜索引擎

介绍了如何使用向量嵌入、向量数据库 qdrant 和 OpenAI 的 CLIP 模型,从零开始搭建一个图片搜索引擎。文中还用了 scrapy+selenium 爬取网上图片,使用 Flask 开发了简单的操作页面。

5、使用 Pydantic Logfire 满足你的日志记录需求

Pydantic 团队最近推出了一个新的日志记录工具 LogFire,除了简单打印日志外,它可以跟踪和分析程序的运行信息,记录 FastAPI 的请求参数和返回值,收集异常计数、连接数和内存使用情况等指标,看起来非常好用!

6、FastAPI 深度揭秘:高效 Web 开发指南

一个关于 FastAPI 的专栏,从基础到进阶,全面介绍 FastAPI 的使用。

7、通过用 Python 实现 HTTP 服务器来理解它

作者用 Python 实现一个简单的 HTTP 服务端,以此来理解它的工作原理,介绍了控制请求、处理请求、发送响应等环节,以及所涉及的各项知识点。

8、我对“Excel 里的 Python”的看法

微软在去年推出了“Python in Excel”预览版,好不好用呢?文章出自xlwings 库和《Python for Excel》的作者,介绍了他深度使用后的一些看法,认为这不是 VBA 的替代品而是 Excel 公式的替代品、将 Jupyter 笔记本单元格集成到 Excel 网格是个错误、等等。

9、用 Python 将卷曲文本的图像提取成 PDF

照片中的书页有一定程度的卷曲,如何将文本内容提取成 PDF 文件?作者用“cubic sheet”模型作页面去畸变,用 OpenCV+PIL 实现文本提取。8 年前的文章,代码已开源在page_dewarp,已收获 1.4K star。

10、Python Celery 的缺陷

Celery 是广泛使用的分布式任务队列,但作者认为它存在诸多问题,文章讨论了三类:缺少或未实现的功能、有问题的默认行为、可观察性不足。

11、事件驱动的 Ansible,是什么、为什么以及如何使用?

Ansible 是用 Python 开发的自动化工具,常用于网络配置管理和应用部署等运维场景。文章介绍了它最新的 Rulebook 特性,可从多个事件源获取事件通知,从而触发某些操作。

12、我国出版的 Python 教材几乎都有基本概念错误

文章称很多 Python 教材套用其它语言的知识框架,导致出现基本概念的错误,如变量和赋值。学校中使用的 Python 教材都是哪些书啊?有没有在校学生分享下教材里的错误呢?(分享自@老不老)(附:Python 畅销书也有一些过时的表述,见 Python 已经支持中文变量名啦!

🐿️项目&资源

1、WeasyPrint:非常棒的工具,将 Web 生成 PDF 文档

可将简单的 HTML 页面变成华丽的统计报告、发票、票据、书籍等。可读取普通文件、HTTP、FTP 和数据 URI。(star 6.8K)

2、oxo:现代的安全扫描编排器

一个安全扫描框架,可查找漏洞并执行侦察、枚举、指纹识别等操作。

3、jupyterlab-desktop:JupyterLab 桌面版,基于 Electron

JupyterLab 的跨平台桌面应用程序,支持 Windows、Mac 和 Linux,使用简单。(star 3.5K)

4、teo:模式驱动的 Web 服务端框架

模式驱动的 Web 服务端框架。服务端 API 是 Rust、Node.js 和 Python 的原生 API,受 GraphQL 和 Prisma 启发,自动数据库迁移。(star 1.1K)

5、aiosql:Python 中的简单 SQL

将 SQL 视为代码,写在“.sql”文件中,可加载到 Python 程序中作为函数调用,重用性高,可集中管理维护。(star 1.3K)

6、thread:AI 驱动的 Python 笔记本,使用 React 构建

将 OpenAI 的代码解释器与 Python Notebook 开发环境结合,除常规功能外,还可用自然语言生成单元格、编辑代码、提问和修复 bug。

7、OpenRecall:Windows Recall 的开源替代

Windows Recall 和 Limitless Rewind.ai 的开源替代,隐私优先,支持 Windows、macOS 和 Linux。定期记录屏幕截图,分析其文本和图像,让你可通过语义搜索,快速查找信息和回看浏览记录。(star 1.3K)

8、requests-futures:使用 Futures 实现的异步 Python HTTP Requests

requests 不支持异步,这个库为它加上concurrent.futures 的异步实现。(star 2.1K)

9、websocket-client:Python 的 WebSocket 客户端

提供对 WebSocket 低级 API 的访问,实现了 WebSocket 协议的 hybi-13 版本。当前不支持 RFC 7692 中的 permessage-deflate 扩展。(star 3.5K)

10、Freeway:WiFi 渗透测试与审计工具

用 Python 实现的 WiFi 渗透工具,帮助白帽黑客和测试人员审计和保护家庭及企业的网络。仅支持 Linux 系统,网卡需支持监视器模式和帧注入。

11、cibuildwheel:以最少的配置为所有平台构建 Python wheel

在 CI 服务器上运行,可构建和测试你的 wheel 包,目前支持 GitHub Actions、Azure Pipelines、Travis CI、AppVeyor、CircleCI 和 GitLab CI。(star 1.8K)

12、超过 6000 份免费的速查表

这是一个专门收集速查表(Cheat Sheet)的网站,分为编程、软件、商业与营销、教育、家庭与健康、游戏与爱好等类别。其中 Python 分类下有 446 份,是所有类别中最多的。

🐧 往年回顾

Python潮流周刊#6:Python 3.12 有我贡献的代码! (2023.06.10)

支持 Python猫