小红花·文摘
  • 首页
  • AI Tokens🪙
  • 排行榜🏆
  • 直播
  • FAQ
上周蠎超赞 26w35 #536

本文为Python周刊快译,汇总近期Python动态:讨论信号处理中print安全性、WebRTC v2、电子墨水徽章、PEP 805并行Python、显式延迟导入、wrapture工具及Guido对GIL看法等新闻,并推荐个人理财、压缩网关、图表库等开源项目,末尾附大妈个人评论与周刊背景说明。

上周蠎超赞 26w35 #536

蠎周刊 蠎周刊 · 2026-09-06T09:42:00Z
第747期:现代面向对象编程、二分查找、Django异步及其他(2026-08-11)

本文是Python周刊摘要,涵盖新书《现代面向对象Python》、二分查找教程、Django异步更新、多个PEP提案(如冻结语法、JSON序列化)、Python 3.14.7等版本发布,以及配置管理、Celery任务队列、LLM提示词开发等文章,并附有相关项目与近期活动信息。

第747期:现代面向对象编程、二分查找、Django异步及其他(2026-08-11)

PyCoder’s Weekly PyCoder’s Weekly · 2026-08-11T19:30:00Z
PEP 847:简单仓库API的问题详情

本PEP提议为Python简单仓库API的错误响应制定统一格式,采用RFC 9457“HTTP API问题详情”标准。目前该API仅定义成功响应,错误响应无标准,安装器只能显示HTTP状态码,缺乏上下文。新方案要求索引以Problem Details对象返回错误,并附Content-Type头,客户端据此渲染更丰富的错误信息,且向后兼容,风险极低。

PEP 847:简单仓库API的问题详情

Newest Python PEPs Newest Python PEPs · 2026-08-06T00:00:00Z
PEP 844:``public`` 和 ``private`` 内置函数

该PEP提议新增内置函数public()和private(),作为装饰器或函数调用,用于在定义处声明模块的公共接口,并自动维护__all__列表,避免其与定义脱节。此设计基于atpublic包,旨在无需第三方依赖,提升模块可见性管理的便利性,不改变现有语义。

PEP 844:``public`` 和 ``private`` 内置函数

Newest Python PEPs Newest Python PEPs · 2026-08-05T00:00:00Z
PEP 843:用于DRY再导出的导出语句

该PEP提议在Python中引入`from <module> export <name>`语句,用于简化库的公共API导出。它自动将导入的名称添加到`__all__`,避免手动同步导入列表和`__all__`的重复工作,并支持别名、通配符和惰性导出。此设计旨在解决大型库(如NumPy、pandas)中常见的导出冗余问题,同时保持向后兼容性。

PEP 843:用于DRY再导出的导出语句

Newest Python PEPs Newest Python PEPs · 2026-08-05T00:00:00Z
PEP 842:模块导出

该PEP提议在Python模块中引入`__export__`变量,用于限制模块外部对属性的访问和可见性。模块可定义`__export__`列表,未列出的名称在外部访问时引发ImportError,且`dir()`和通配符导入会相应调整。此机制旨在提升模块维护性,明确公共API边界,但非安全措施,可被绕过。

PEP 842:模块导出

Newest Python PEPs Newest Python PEPs · 2026-07-25T00:00:00Z
PEP 841:为优化不可变类型添加冻结语法

该PEP提议为Python引入冻结显示语法:`f{1,2,3}`生成frozenset,`f{'a':1}`生成frozendict。此语法保证不可变性,使编译器能优化常量折叠,提升性能,并促进不可变容器在并发场景中的使用。语法与现有集合和字典显示一致,新增AST节点和操作码,完全向后兼容。

PEP 841:为优化不可变类型添加冻结语法

Newest Python PEPs Newest Python PEPs · 2026-07-20T00:00:00Z
PEP 840:类命名空间中的名称解析

类中的变量名解析存在长期不一致性,讨论了局部和全局命名空间的查找规则。局部变量未绑定时会引发NameError。Python 3.4后,类中的自由变量可解析为封闭作用域的绑定,但未绑定的局部变量仍查找全局命名空间。提出了改进方案,以提高一致性和可读性。

PEP 840:类命名空间中的名称解析

Newest Python PEPs Newest Python PEPs · 2026-07-15T00:00:00Z
PEP 838:在pyvenv.cfg中添加python-version字段

该PEP提议在pyvenv.cfg中添加一个python-version字段,以记录虚拟环境使用的Python解释器的主版本和次版本。此字段旨在避免因补丁版本更新而导致的问题,确保工具在处理虚拟环境时的稳定性。创建虚拟环境的工具必须写入此字段,读取现有版本信息则不被推荐。

PEP 838:在pyvenv.cfg中添加python-version字段

Newest Python PEPs Newest Python PEPs · 2026-07-15T00:00:00Z
PEP 839:PyFrozenSetWriter 和 PyFrozenDictWriter C API

该文章提出为Python C API新增PyFrozenSetWriter和PyFrozenDictWriter两个构建器接口,遵循PEP 782的PyBytesWriter设计,允许直接逐项构建不可变的frozenset和frozendict,避免中间可变对象。同时软弃用对frozenset调用PySet_Add(),推荐使用新接口,并计划迁移CPython内部代码。

PEP 839:PyFrozenSetWriter 和 PyFrozenDictWriter C API

Newest Python PEPs Newest Python PEPs · 2026-07-15T00:00:00Z
PEP 837:类命名空间中的名称解析

文章讨论了类中变量名解析的不一致性及其解决方案。类命名空间使用部分动态查找,局部变量未绑定时会引发NameError。Python 3.4后,类中的自由变量可在封闭作用域解析,但局部变量在赋值前仍查找全局命名空间。提出的解决方案包括使类命名空间更像函数命名空间,或在未绑定时使用全局命名空间。

PEP 837:类命名空间中的名称解析

Newest Python PEPs Newest Python PEPs · 2026-07-12T00:00:00Z
PEP 836:JIT加速:CPython支持的JIT编译器之路

Python 3.13引入了实验性即时编译器(JIT),在3.15版本中实现了4-12%的性能提升。PEP 744提出了JIT的设计和未来发展路径,目标是在3.17版本前实现至少20%的性能改进。JIT旨在提高CPython性能,同时保持与现有生态系统的兼容性。未来2.5年内,JIT将专注于优化和社区参与,以确保其成为CPython的非实验性特性。

PEP 836:JIT加速:CPython支持的JIT编译器之路

Newest Python PEPs Newest Python PEPs · 2026-07-02T00:00:00Z
第741期:根日志记录器、PEP 832、Django任务等(2026-06-30)

本文讨论了Python日志记录的层次结构,强调库应使用命名日志记录器和NullHandler,以避免覆盖应用程序的日志设置,并提供实用模式以确保日志行为在应用程序控制之下。

第741期:根日志记录器、PEP 832、Django任务等(2026-06-30)

PyCoder’s Weekly PyCoder’s Weekly · 2026-06-30T19:30:00Z
第739期:JIT延迟、沙盒、OpenRouter及更多(2026-06-16)

Python指导委员会宣布暂停JIT工作,直至新PEP编写完成,目前存在许多未解决的问题,需进一步讨论。

第739期:JIT延迟、沙盒、OpenRouter及更多(2026-06-16)

PyCoder’s Weekly PyCoder’s Weekly · 2026-06-16T19:30:00Z
PEP 835:Annotated类型元数据的简写语法

该提案引入了一种新的简写语法,使用@运算符为类型附加元数据,旨在减少类型注释的冗长性。这种方法使得Pydantic、FastAPI和SQLModel等库的使用更加简洁,同时保持现代Annotated标准,提升代码可读性和可维护性。

PEP 835:Annotated类型元数据的简写语法

Newest Python PEPs Newest Python PEPs · 2026-06-12T00:00:00Z
PEP 833:冻结简单仓库API的HTML表示

PEP 833提议冻结简单仓库API的HTML表示,认为其已完成,不应再更新。未来的PEP应专注于JSON表示。HTML表示在Python打包生态中发挥了重要作用,但存在扩展困难和兼容性问题。此PEP旨在正式化现状,未来不应修改HTML表示。

PEP 833:冻结简单仓库API的HTML表示

Newest Python PEPs Newest Python PEPs · 2026-04-21T00:00:00Z
PEP 829:通过 .site.toml 文件实现结构化启动配置

PEP 829 提议使用基于 TOML 的配置文件格式(<package>.site.toml)替代 .pth 文件,以改善 Python 启动时的包配置。新格式解决了 .pth 文件的结构混乱和安全隐患,支持路径扩展和初始化代码的明确声明,包含 [metadata]、[paths] 和 [entrypoints] 三个部分,确保更好的错误处理和未来扩展性,同时保持与旧版 Python 的兼容性。

PEP 829:通过 .site.toml 文件实现结构化启动配置

Newest Python PEPs Newest Python PEPs · 2026-03-31T00:00:00Z
PEP 830:在异常和回溯中添加时间戳

PEP 830 提议在 Python 的 BaseException 中添加可选的 __timestamp_ns__ 属性,以记录异常实例化的时间。此功能通过环境变量或命令行标志启用,格式化的回溯将显示时间戳,旨在帮助调试和关联外部日志,尤其是在处理多个异常时。时间戳以纳秒为单位存储,默认情况下禁用,不影响现有异常处理代码。

PEP 830:在异常和回溯中添加时间戳

Newest Python PEPs Newest Python PEPs · 2026-03-15T00:00:00Z
PEP 831:无处不在的帧指针:为Python启用系统级可观察性

PEP 831提议在支持的平台上默认使用帧指针构建CPython,以提高Python的可观察性。帧指针有助于性能分析、调试和系统跟踪,尽管可能带来1-2%的性能开销,但其调试和分析优势远超成本。多个主要Linux发行版和Python生态系统工具已开始采用这一变更。

PEP 831:无处不在的帧指针:为Python启用系统级可观察性

Newest Python PEPs Newest Python PEPs · 2026-03-14T00:00:00Z
PEP 828:在异步生成器中支持 'yield from'

PEP 828 提出了在异步生成器中支持 `yield from` 的功能,允许使用新的 `async yield from` 语法,并移除了异步生成器不能返回非 None 值的限制。这将简化异步生成器的使用,提高代码的可读性和效率,同时确保与同步生成器的行为一致,增强 Python 的异步编程能力。

PEP 828:在异步生成器中支持 'yield from'

Newest Python PEPs Newest Python PEPs · 2026-03-07T00:00:00Z
  • <<
  • <
  • 1 (current)
  • 2
  • 3
  • >
  • >>
👤 个人中心
在公众号发送验证码完成验证
登录验证
在本设备完成一次验证即可继续使用

完成下面两步后,将自动完成登录并继续当前操作。

1 关注公众号
小红花技术领袖公众号二维码
小红花技术领袖
如果当前 App 无法识别二维码,请在微信搜索并关注该公众号
2 发送验证码
在公众号对话中发送下面 4 位验证码
小红花技术领袖俱乐部
小红花·文摘:汇聚分发优质内容
小红花技术领袖俱乐部
Copyright © 2021-
粤ICP备2022094092号-1
公众号 小红花技术领袖俱乐部公众号二维码
视频号 小红花技术领袖俱乐部视频号二维码