SuperAPI AI 工具集

python-standards

编程与开发

查看项目

更新于 10-15 23:42

技能介绍

用途:为现代 Python 项目提供统一的编码标准、类型提示、代码质量要求与最佳实践,适用于编写、审查或重构 Python 代码。

主要能力与规则:类型提示为强制要求,函数参数与返回值均需标注;可选类型使用 T | None,禁止 Optional[T];类型提示用 typing.Any 而非 object,并在文档字符串中说明参数与返回值。字符串格式化统一使用 f-string,禁止 .format() 与 %。数据结构优先使用推导式,需要索引与值时用 enumerate(),文件路径使用 pathlib.Path,禁止 os.path。与 None 比较使用 is / is not。文件操作使用 with 语句。代码规模限制:单模块小于 250 行(CLI 命令注册文件例外),函数小于 75 行,类小于 200 行,超出需重构。日志使用 logging 模块而非 print()。库偏好:CLI 用 typer,终端格式化用 rich,数据模型用 pydantic,应用设置用 pydantic-settings,数据库用 oxyde,测试用 pytest,格式化与检查用 ruff、undersort、codespell,Excel 读取用 pandas + python-calamine,写入用 xlsxwriter,类型检查用 ty。注释只解释意图或隐含约束,不重复代码表面含义,禁止装饰性标题、编号步骤、emoji 与特殊 Unicode 字符。

使用方式:重大修改后运行 ruff check src/ tests/、ruff format src/ tests/、ruff check src tests --select I --fix、ty src/。禁止用 # noqa 抑制 linter 问题,必须修复根因;不得引入 PLC0415、E402、ANN001、ANN201、ANN202 等规则问题。循环导入应重构消除,不得将 TYPE_CHECKING 作为永久方案。运行命令前确保虚拟环境已激活,Python 命令使用 uv run,例如 uv run pytest -v、uv run -m my_module src/、uv run scripts/update_cache.py。文档字符串使用 Google 风格。测试使用 pytest,运行 uv run pytest -v --tb=short,使用 fixture 与参数化测试,用 mock 隔离外部系统,测试缓存目录为 ./tests/cache,目标覆盖率 90% 以上。

限制:该技能未提供额外资源,全部规范记录在 SKILL.md 中;未提供收费、价格、平台或效果信息。