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

🦄文章&教程

作者一年前吐槽了 Python 打包的悲惨状况,一年后再看,有什么改善么?还是变得更糟糕了呢?文章讨论了社区里主流的打包工具、PEP 标准及其落实情况,尽管有不少新东西,但看起来还是很黯淡。
文章整理了去年 PyCon US 和 Python AU 的 243 个视频,按照 Youtube 播放数排序。都不算多,而且第一名和第二名的差距非常之大。
PyCon 2023 视频播放量
Java 中用synchronized 关键字可以保证变量是线程安全的,Python 中有什么东西可以达到相同效果么?文章介绍了threading 模块的 Lock + 上下文管理器 + 装饰器的实现方案。
PyPy 是一个 Python 解释器,它的 C API 兼容层存在一些性能问题,作者正在研究使 PyPy 的 C API 变快方法,文章介绍了他们所做的工作。
作者在用 Python 和 Kotlin 开发时,都接触了协程,因此写了几篇文章来比较它们的用法、分析它们的细节和工作原理,涉及文件读写、HTTP 请求、序列和生成器,可以加深你对协程的理解。
Pydantic 在处理 Unix 时间戳时会猜测是以秒还是毫秒为单位,但这遇到 1970 年的时间就有问题啦!众所周知,计算机世界的时间戳从 1970-1-1 开始(UNIX 纪元),这意味着早期的时间戳位数少,若当成秒级换算的话,谬之几十年!
如何在浏览器上实时执行代码片段?作者基于 WASI,开源了一个工具,可以在浏览器上执行 Python、PHP、Ruby、Lua、Javascript 和 SQLite 代码片段。
多线程环境中使用 SQLite,可能会出现“database is locked”错误,文章分析了两大原因(SQLite 等待锁超时、在事务读取后写入),介绍了对应的解决方案,特别提及 Django 本身提供的解决方案。
Polars 是基于 Rust + Arrow 实现的高性能 Python 数据处理库,这篇教程全方位介绍了 Polars 的相关知识。(附:另一篇同样主题的文章 Polars 实用教程
如何在 Python 中实现类似 React 的组件?作者准备用纯 Python 函数生成 HTML,使用lxml 库来渲染,文章介绍了一些基本的尝试,验证可行性。
用 SQL 能否实现一个大语言模型呢?ChatGPT 说这超出了 SQL 的能力。但是,作者不这样认为!文章详细介绍了实现 GPT 所需的相关知识,最终用 500 行 SQL 实现了出来!(附:作者从 2010 年以来每年用 SQL 实现一件不可思议的事,比如 用 SQL 求解魔方用 SQL 实现量子计算机模拟器 ……)
🎁Python潮流周刊🎁每 30 期为一季,第一季的精华内容已整理成一篇,方便你随时查看。在线访问地址:Python 潮流周刊第一季精华合集(1~30)

🐿️项目&资源

requests 库的直接替代,具有 HTTP/3、HTTP/2、多路复用连接、系统 CA、证书吊销、HTTPS/TLS/QUIC 或 UDP 上的 DNS、异步、DNSSEC,消除了 requests 的很多缺点。
Python 的 __slot__ 变量可以减少实例内存,防止添加动态属性。但要正常工作,所有基类都要实现它。这个库可以检查它是否损坏、重叠、冗余,提供了 pre-commit 钩子。
支持拖拽小部件、绘图、表格和其它可查看的 Python 对象组合到自定义分析工具和仪表板中,支持大量可视化工具,支持 ipywidgets 。(star 3.7K)
一边编辑,一边查看实时效果
支持任意格式文件或数据库的本地知识库问答系统,可断网安装使用。一键安装部署,支持跨语种问答,支持选择多知识库问答。(star 1.9K)
TTS 同步产生脸部表情数据、声音到表情、生成身体动画。
通过 Hook Web 页面中的 Canvas 函数,获取文本及样式等信息,转换成 Markdown 格式,最终转换成 Epub、PDF 和 Mobi 格式。
这个项目收录了 400 多道 LeetCode 题目和不同语言的答案。
一个 PC 端的语音输入、字幕转录工具,完全离线、无限时长、低延迟、高准确率、中英混输、自动阿拉伯数字、自动调整中英间隔。支持热词功能、日记功能、转录功能等。
一个多语言文档 OCR 工具包,支持准确的行级文本检测。缺点是不适用于图片和手写文本。(star 3.6K)
强大的短镜头语音转换和文本转语音 WebUI,Zero-shot TTS、Few-shot TTS、跨语言支持、W ebUI 工具。(star 2.7K)
一个 Windows 上的 RAG 演示项目,基于 LLaMa 2 13B 模型、TensorRT-LLM 和 FAISS 向量搜索库。
以结构化、模板化的方式编写高质量 ChatGPT prompt,克服普通 Prompt 创建时缺乏系统性、缺乏灵活性等缺点。(star 2.8K)

🐼欢迎订阅

本周刊已持续连载一年,更新内容接近 10 万字。我为此投入了大量的时间和精力,为了健康可持续性的发展,现在正考虑将周刊转为收费模式。周刊的发展离不开你们的资助,欢迎订阅我的小报童专栏。前 100 名订阅者可享受 8 折优惠,请点击领取: 优惠券