Python猫

Python 潮流周刊#67:uv 的重磅更新

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

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

🦄文章&教程[2]

1、uv:统一的 Python 打包工具[3]

uv 又推出了重大更新!不仅作为 pip 的替代,还扩展了 Python 项目管理、命令行工具、单文件脚本以及 Python 本身的端到端解决方案。(附:UV 更新和 PEP 723:简化 Python 打包和脚本编写[4] )

2、PyJWT 和 python-jose 在处理 JWT 令牌时的差异[5]

PyJWT 和 python-jose 是用于处理 JWT 的 Python 库,但它们在功能范围和设计哲学上有一些重要区别。文章介绍了它们的差异,以及在项目中使用 FastAPI + python-jose 来处理 JWT 的一些例子。

3、Kindle + Python = 电子墨水屏面板(第 1 部分)[6]

如何在 Kindle 上安装 Python?文章介绍了一种硬件越狱的方式,成功利用 KUAL 将 Python 安装到 Kindle Paperwhite 3 上,并在上面运行脚本,成功收获一个电墨水屏仪表板。

4、再见了 Pandas,感谢所有的鱼[7]

Ibis 是一个开源的数据分析和可视化库,从 10.0 版本开始将删除 pandas 和 dask 后端,改为推荐 DuckDB 后端。文章介绍了当初为何选 pandas,以及 pandas 带来的痛苦。(附:ibis 是朱鹭的意思)

5、CPython 编译器强化[8]

作者加入了 Google Summer of Code 活动,本文回顾了他在强化 CPython 编译器时所做的事,包括启用编译器选项、开发工具追踪告警、解决现有告警的计划以及吸取的经验教训。

6、通过代码生成实现高性能[9]

动态代码生成,简称 codegen,是一种在程序运行时生成新代码的技术。文章介绍了什么时候应该使用它、一个真实将生产系统的速度提升 2 倍的例子、错误的和正确的使用方法。

7、PortaOne 如何用 PyPy 作高性能处理,每月接通超过 1B 的电话[10]

PortaOne 是一家服务于电信运营商的公司,使用 Python 开发它们的核心中间件。文章简要介绍它的功能实现、使用 PyPy 提升性能以及在使用中发现的重大 BUG。

8、10 种 Python 编程优化技术[11]

介绍了 10 种优化 Python 代码的方法,编写更高效高性能的代码,例如变量打包、多用内存减少磁盘 I/O、固定长度及可变长度变量、内部函数与公共函数,等等。

9、Windows 中 Python 程序的 NTLM 凭据盗窃[12]

NTLMv2 哈希盗窃是一种常见的凭据收集技术,文章披露了 3 个流行的 Python 库(Gradio、Jupyter Notebook 和 Streamlit)中可能导致凭证泄露的 SSRF 漏洞,详细解析了造成这些漏洞的代码。

10、Flask 源码解析系列文章 7 篇[13]

发布于 2017 年的 Flask 源码解析系列文章,解析了 0.12 版本。涵盖主题有应用启动流程、路由、上下文、请求、响应和 session,对深入理解 Flask 有所帮助。(分享自@un4gt)(附:本则分享者的快速初始化 Flask 项目的脚手架 flasky-cli[14])

11、pip 24.2 有什么新增功能? 为什么弃用可编辑安装?[15]

pip 核心团队成员介绍了 24.2 版本中值得注意的变化,包括弃用了可编辑安装、默认使用系统的 HTTPS 证书、多项性能优化、pip check 规则变严格、配置 pip 仅在激活的虚拟环境中使用。

12、 “所有 htmx 演示之母”之后续 [16]

HTMX 在 Python 社区的出镜频率越来越高了,往期周期里分享过不少。本文作者对 HTMX 的流行起到关键作用,作者回顾了自己接触和推广 HTMX 的经过、产生的影响、以及回答了大家提出的一些问题。

htmx的Github星星趋势
htmx的Github星星趋势

🐿️项目&资源[17]

1、theine:高性能的内存中缓存[18]

受 Caffeine 启发的高性能缓存库,Rust 核心,使用 W-TinyLFU 和 Clock-Pro 驱逐策略实现高命中率,使用分层计时器自动删除过期数据。

2、picows:超高速 websocket 客户端和服务端[19]

使用 Cython 实现的库,为构建 asyncio WebSocket 客户端和服务端而设计,性能比 aiohttp 还快近 2 倍。

3、microrabbit:用于 RabbitMQ 的轻量级异步 Python 框架[20]

轻量级 RabbitMQ 处理框架,可简化微服务和分布式系统的构建,功能包括简单的消息路由、支持插件和直观的客户端配置。

4、wave:用于 Python 和 R 的实时 Web 应用和仪表板[21]

用纯 Python 或 R 构建美观、低延迟、实时、基于浏览器的应用和仪表板,无需 HTML、Javascript 和 CSS。(star 3.9K)

Image

5、repo2vec:仅用 2 条命令,与你的代码仓聊天[22]

一个简单易用的库,类似于 GitHub Copilot,可与任何公共或私人代码仓聊天。

6、django-currentuser:在线程或数据库存储用户请求信息[23]

方便地管理对当前请求用户的引用,支持线程和数据库存储方式。

7、intelligent-trading-bot:基于机器学习和特征工程的智能交易机器人[24]

用最先进的机器学习 算法和特征工程自动交易加密货币,以批量离线模式分析历史数据并训练模型。

8、rerun:可视化多模态数据流[25]

记录图像、张量、点云和文本等多模态数据,实时可视化,可用于机器人、仿真、计算机视觉等涉及大量传感器或随时间变化信号的场景。(star 6.2K)

9、VideoSys:简单高效的视频生成系统[26]

为视频生成提供用户友好和高性能的基础设施,支持训练、推理、服务和压缩的整个流程。(star 1.6K)

10、KnowledgeGraph: 从零开始构建知识图谱[27]

仓库收录了构建知识图谱的基础知识、构建理论、构建实战等话题的论文/博客资料,从理论到实现。(star 1K)

11、terminaltexteffects:终端视觉效果引擎[28]

终端视觉效果引擎,可作为系统程序安装并在终端中生成效果,也可作为 Python 库安装并在 Python 脚本/应用中启用效果。(star 2.7K)

12、kotaemon:基于 RAG 与你的文档聊天[29]

一个简约可定制的 RAG UI(基于 Gradio),用于与文档聊天,支持查看 RAG 管道的运行情况。(star 5.8K)

Image

🐧 往年回顾[30]

Python 潮流周刊#17:Excel 终于支持 Python 了、Meta 重磅开源新项目、Mojo 新得 1 亿美元融资[31](2023.08.26)

参考资料
[1] 

电报频道: https://t.me/pythontrendingweekly

[2] 

🦄文章&教程: https://xiaobot.net/p/python_weekly

[3] 

uv:统一的 Python 打包工具: https://astral.sh/blog/uv-unified-python-packaging

[4] 

UV 更新和 PEP 723:简化 Python 打包和脚本编写: https://micro.webology.dev/2024/08/21/uv-updates-and.html

[5] 

PyJWT 和 python-jose 在处理 JWT 令牌时的差异: https://www.cnblogs.com/wuhuacong/p/18382179

[6] 

Kindle + Python = 电子墨水屏面板(第 1 部分): https://blog.4dcu.be/diy/2020/09/27/PythonKindleDashboard_1.html

[7] 

再见了 Pandas,感谢所有的鱼: https://ibis-project.org/posts/farewell-pandas/

[8] 

CPython 编译器强化: http://nohlson.com/blog/CPython-Compiler-Hardening-Summer-Retrospective/

[9] 

通过代码生成实现高性能: https://medium.com/@yonatanzunger/advanced-python-achieving-high-performance-with-code-generation-796b177ec79

[10] 

PortaOne 如何用 PyPy 作高性能处理,每月接通超过 1B 的电话: https://pypy.org/posts/2024/08/portaone.html

[11] 

10 种 Python 编程优化技术: https://dev.to/jamesbright/10-python-programming-optimisation-techniques-5ckf

[12] 

Windows 中 Python 程序的 NTLM 凭据盗窃: https://www.horizon3.ai/attack-research/disclosures/ntlm-credential-theft-in-python-windows-applications/

[13] 

Flask 源码解析系列文章 7 篇: https://cizixs.com/2017/01/10/flask-insight-introduction/

[14] 

flasky-cli: https://github.com/un4gt/flasky-cli

[15] 

pip 24.2 有什么新增功能? 为什么弃用可编辑安装?: https://ichard26.github.io/blog/2024/08/whats-new-in-pip-24.2

[16] 

“所有 htmx 演示之母”之后续 : https://david.guillot.me/en/posts/tech/following-up-mother-of-all-htmx-demos

[17] 

🐿️项目&资源: https://xiaobot.net/p/python_weekly

[18] 

theine:高性能的内存中缓存: https://github.com/Yiling-J/theine

[19] 

picows:超高速 websocket 客户端和服务端: https://github.com/tarasko/picows

[20] 

microrabbit:用于 RabbitMQ 的轻量级异步 Python 框架: https://github.com/TonnoBelloSnello/microrabbit

[21] 

wave:用于 Python 和 R 的实时 Web 应用和仪表板: https://github.com/h2oai/wave

[22] 

repo2vec:仅用 2 条命令,与你的代码仓聊天: https://github.com/Storia-AI/repo2vec

[23] 

django-currentuser:在线程或数据库存储用户请求信息: https://github.com/zsoldosp/django-currentuser

[24] 

intelligent-trading-bot:基于机器学习和特征工程的智能交易机器人: https://github.com/asavinov/intelligent-trading-bot

[25] 

rerun:可视化多模态数据流: https://github.com/rerun-io/rerun

[26] 

VideoSys:简单高效的视频生成系统: https://github.com/NUS-HPC-AI-Lab/VideoSys

[27] 

KnowledgeGraph: 从零开始构建知识图谱: https://github.com/myhhub/KnowledgeGraph

[28] 

terminaltexteffects:终端视觉效果引擎: https://github.com/ChrisBuilds/terminaltexteffects

[29] 

kotaemon:基于 RAG 与你的文档聊天: https://github.com/Cinnamon/kotaemon

[30] 

🐧 往年回顾: https://xiaobot.net/p/python_weekly

[31] 

Python 潮流周刊#17:Excel 终于支持 Python 了、Meta 重磅开源新项目、Mojo 新得 1 亿美元融资: https://pythoncat.top/posts/2023-08-26-weekly

Image
Image