Python 3.14引入模板字符串:超越f-string的安全字符串处理

2025-04-10
Python 3.14引入模板字符串:超越f-string的安全字符串处理

Python 3.14将引入一种新的字符串格式:模板字符串(t-string)。它在f-string的基础上进行了扩展,允许开发者在字符串插值前访问和转换值,从而避免了SQL注入和XSS等安全漏洞。模板字符串会解析为一个新的`Template`对象,该对象包含字符串片段和插值表达式,方便开发者进行自定义处理,例如HTML安全转义和结构化日志记录。这项改进为Python带来了更灵活、更安全的字符串处理能力,并为构建更复杂的DSL和模板引擎提供了新的可能性。

阅读更多

Python 启动器支持虚拟环境

2025-02-22
Python 启动器支持虚拟环境

Python 的 Windows 安装程序包含一个启动器,用于定位正确的 Python 解释器。然而,它此前并不支持虚拟环境。PEP 486 提出让启动器能够识别虚拟环境,这意味着在没有指定 Python 解释器时,启动器会优先使用当前激活的虚拟环境,如果没有则回退到默认的 Python。这简化了在虚拟环境中运行 Python 命令的方式,避免了在不同环境下使用不同命令的困扰。

阅读更多
开发 PEP 486

PEP 762 – 用全新 REPL 替换默认 REPL

2024-10-15
PEP 762 – 用全新 REPL 替换默认 REPL

该文章介绍了 Python 3.13 中使用 Python 重新编写的全新交互式解释器 (REPL)。新 REPL 基于 PyREPL,提供多行编辑、语法高亮、自定义命令等现代功能,旨在改善交互式体验。文章详细说明了采用新 REPL 的原因,包括易于维护、扩展和贡献。文章还介绍了新功能,如多行历史记录和编辑、复制粘贴改进、自定义命令和颜色支持。

阅读更多
未分类

PEP 730 – 将 iOS 添加为支持的平台

2024-06-02
PEP 730 – 将 iOS 添加为支持的平台

该文章描述了在 CPython 中添加对 iOS 支持的提案,目标是在 Python 3.13 中实现 Tier 3 级别的支持。文章详细讨论了实现 iOS 支持所需的技术细节,包括平台识别、动态库加载、编译、分发和打包等方面。该提案还涵盖了项目管理方面的问题,例如 CI 资源、PEP 11 更新和向后兼容性等。

阅读更多
未分类 CPython

PEP 686:将 UTF-8 模式设为默认 | peps.python.org

2024-04-26
PEP 686:将 UTF-8 模式设为默认 | peps.python.org

Python改进提案 686 描述了向 Python 标准库中添加 `sys.osinfo` 模块的建议,该模块提供了有关操作系统和当前 Python 运行时环境的系统信息。此模块包含以下子模块:`OperatingSystem`、`Platform`、`Processor`、`Memory` 和 `System`。此模块是为需要有关主机操作系统能力或行为的信息的程序员设计的,它提供了比 `platform` 和 `os` 模块更详细和一致的信息。

阅读更多