该PEP提议为Python引入冻结显示语法:`f{1,2,3}`生成frozenset,`f{'a':1}`生成frozendict。此语法保证不可变性,使编译器能优化常量折叠,提升性能,并促进不可变容器在并发场景中的使用。语法与现有集合和字典显示一致,新增AST节点和操作码,完全向后兼容。
该文章提出为Python C API新增PyFrozenSetWriter和PyFrozenDictWriter两个构建器接口,遵循PEP 782的PyBytesWriter设计,允许直接逐项构建不可变的frozenset和frozendict,避免中间可变对象。同时软弃用对frozenset调用PySet_Add(),推荐使用新接口,并计划迁移CPython内部代码。
完成下面两步后,将自动完成登录并继续当前操作。