你好,我是猫哥。这里每周分享优质的 Python、AI 及通用技术内容,大部分为英文。周刊开源在 Github 上,喜欢请给颗小星星支持下~
本期分享了 12 篇文章,12 个开源项目,1 则音视频,全文 2200 字。
🦄文章&教程
作者确信 async/await 对大多数语言来说是一种糟糕的抽象,更好的方式是线程。虽然它让我们从回调地狱中解脱,但也带来了新的问题,如彩色函数、背压挑战等,阻碍我们追求直接直观的并发。作者建议新语言设计应采用类似 Java 的 Loom 项目的虚拟线程模型。(附:文中一再提及的一篇旧文 I’m not feeling the async pressure)
文章比较了 Python 与 Node.js 和 Rust 的性能,例子是计算斐波那契数列和冒泡排序。结果发现 Python 3.11 相比上一版本有较大提升;PyPy 与 Node.js 速度十分相近。作者为 Python 近几个版本的性能提升感到满意,对 PyPy 的性能感到惊讶。
异步 Django 使用时有什么注意事项?文章介绍了全异步涉及的 ASGI Web 服务器、异步视图、异步 ORM、异步 API 调用、异步中间件等使用,结论认为 异步 Django 已经可用于生产环境。
持久执行能够在系统崩溃、重启或中断后恢复到之前的状态或位置。文章介绍了 DBOS 的轻量级实现,使用 Postgres 来存储工作流状态和步骤输出,支持持久化睡眠、消息传递和队列等功能,简化了开发、部署和维护。
上期周刊分享了一篇实现管道模式的文章,用的方法是 reduce 和 lambda,而这篇文章则通过重载运算符来实现,调用时更贴近 Linux 中的管道操作符。(分享自@un4gt)
文章分享了好几组性能测试的数据,FireDucks 平均比 Pandas 快 50 倍,比 Polars 快,甚至击败了 DuckDB!FireDucks 与现有 Pandas 100% 兼容,性能更快,看起来不错。
不算空白字符,任何 Python 程序都能编码成仅 24 个字符的长度?文章将 Unicode 空白字符的码点映射到特定的字符上,实现代码的极致压缩。
8、PEP-765:不允许在 finally 块用 return/break/continue 作退出
一则新的 PEP 草案,建议限制在 finally 代码块中使用 return/break/continue 作退出,主要原因是它会导致异常被吞噬,以及 finally 中 return 的值会替代 try 子句的 return 值。
详细分析了 CPython 中的内存管理机制,主要关注循环垃圾回收器 (GC),介绍了它的运行方式和运行时机,并解释了它对程序性能的影响。还介绍了优化内存使用和减少 GC 影响的技巧,如调整 GC 阈值、使用弱引用和优化数据结构。
作者建议随着系统增长而逐步消除瓶颈,介绍了常见瓶颈的优化方法,包括查询过程优化、数据库索引、查询集优化、视图级缓存、模板片段缓存、底层缓存 API、异步视图和后台任务、负载均衡,等等。
SQL 不仅可作数据库查询,还可解决看似棘手的问题,如数独和编程挑战。文章展示了 SQL 在解决图同态和约束满足问题的强大能力,解决这类问题比纯 Python 更快。
GDB 是一个古老的 Linux/BSD 系统调试器,文章介绍了如何定制 GDB 界面、配置 DDD、GDB 的调试技巧,以及使用 GDB 的 Python API 来创建辅助函数和美化打印等内容。
🐿️项目&资源
提供给 TUI 开发使用的基本小组件(按钮、标签、复选框等)、专用小组件(Windows, Frames, Tables等)、真彩色支持、全/半/零大小的 Unicode 字符。
在终端中通过键盘或鼠标来导航目录树,支持文件预览、路径补全和校验、路径组件。
由 ClickHouse 提供支持的进程内 SQL OLAP 引擎,输入和输出支持 Parquet、CSV、JSON、Arrow、ORC 和 60+ 种格式,支持 Python DB API 2.0。(star 2.2K)

4、open-notebook:谷歌 Notebook LM 的开源替代
支持多笔记本、支持多种模型、支持笔记转播客、广泛的内容集成方式、AI 驱动的笔记、集成搜索引擎、精细的上下文管理。
检查 LLM 的漏洞,包括探测幻觉、数据泄露、提示词注入、错误信息、有害信息、越狱等问题。(star 2.7K)
一个基于 Transformer 架构的管道,旨在生成 AI 图像和视频,以及用于训练 Diffusion Transformer 的基线模型和 Lora 模型。(star 1.5K)
知名 UP 主何同学将基于此开源项目改造的程序称为“专门写了一个软件”……它支持 ASCII 字符转制,包括图像到文本、图像到图像、视频到视频。(star 6K)

一种查询字典列表或对象列表的方法,就像在 DBMS 中过滤一样。可查询与 OR、AND 或 NOT 匹配的字典/对象。速度比 Pandas 快。
Distributed Systems 的第 4 版,包含各种小的更正项,所有 Python 代码已更新为 Python 3.
10、ebook2audiobook:生成带章节的电子书有声读物
用 Calibre 和 Coqui XTTS 将电子书转换为带章节和元数据的有声读物,支持可选的语音克隆和多种语言!(star 1K)
一个专注于隐私的被动记录项目,可以自动记录屏幕内容,构建智能索引,并提供便捷的 Web 界面来检索历史记录。数据存储在本地,完全本地化运行。
用 Python 开发的轻量级音乐播放器,简约跨平台,支持本地文件及用 spotdl 在线下载。

🐢播客&视频
1、PyData Tel Aviv 2024 视频列表(24个)
PyData Tel Aviv 是一个专注于 PyData 项目的会议和社区活动,聚焦数据分析、数据科学和机器学习领域。
🐧 往年回顾
Python 潮流周刊#28:两种线程池、四种优化程序的方法(2023.11.25)
🐱欢迎订阅
技术周刊是聪明人在信息过载时代中筛选优质知识的聪明手段。这是一个专为国内 Python 开发者量身打造的资讯平台,为你挑选最值得分享的文章、教程、开源项目、软件工具、播客和视频、热门话题等丰富内容。立即订阅,每周将收到一篇文章推送,每周进步一点点。
欢迎留言,说说你最喜欢本期的哪一则分享?大家反馈得越多,我今后分享的也会越多!
欢迎将本专栏分享给同样爱学习的同学,当有人通过你分享的海报或者链接,购买了专栏,那么你将获得高额的返利。
万字浓缩版,Python 潮流周刊第 1 季的 800 个链接!