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 的经过、产生的影响、以及回答了大家提出的一些问题。
🐿️项目&资源[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)
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)
🐧 往年回顾[30]
Python 潮流周刊#17:Excel 终于支持 Python 了、Meta 重磅开源新项目、Mojo 新得 1 亿美元融资[31](2023.08.26)
电报频道: 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