You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

寻找可自动修复PEP 585类型提示的工具:替换typing模块集合类型

符合PEP 585规范的类型提示自动转换工具

当然有这类工具,以下是两个实用选项:

pyupgrade

这是专门用于升级Python代码语法的工具,核心功能就包含将typing模块中的集合类型(如Dict/List/Set等)替换为PEP 585规定的内置类型(dict/list/set),同时会自动清理不再需要的typing导入语句。

使用方式:

  1. 安装:pip install pyupgrade
  2. 处理单个文件:pyupgrade --py39-plus your_file.py(--py39-plus指定针对Python 3.9+版本,因为3.9才正式支持内置集合类型的泛型语法)
  3. 批量处理项目:pyupgrade --py39-plus **/*.py

它可以和Black配合使用——先运行pyupgrade完成语法升级,再用Black做代码格式化。

ruff

作为新一代Python代码检查与修复工具,ruff也支持这类转换,对应的规则是UP006(替换typing集合类型为内置类型)和UP007(移除未使用的typing导入)。

使用步骤:

  1. 安装:pip install ruff
  2. 自动修复代码:ruff check --fix your_file.py
  3. 项目级配置可在pyproject.toml中添加:
[tool.ruff.lint]
select = ["UP006", "UP007"]

另外你提到的Black确实不提供这类功能,因为Black的定位是代码格式化工具,仅负责统一代码排版风格,不会修改语法层面的类型提示导入与替换。

内容的提问来源于stack exchange,提问作者Raquel

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 20:20:00