一款工具搞定Python代码规范:cgft-llm Ruff格式化+Lint实战完整指南
【免费下载链接】cgft-llmcgft-llm 是一个学习大语言模型(LLM)开发的开源资源。它提供代码、文档和视频教程,帮助用户通过实践掌握前沿核心 LLM 技术项目地址: https://gitcode.com/echonoshy/cgft-llm
cgft-llm 是一个动手学习大语言模型(LLM)开发的开源资源仓库,除了 RAG、Agent、模型微调等实战课程,它的「动手加入开源」系列还系统讲解了 Python 工程实践。本文就基于仓库中的 ruff 教程,带你用Ruff 这一款工具同时搞定 Python 代码格式化(format)和静态检查(Lint),从安装到配置再到自动化,新手 5 分钟就能跑通。
Ruff 是什么:格式化和 Lint 一工具全包 🎯
很多新手写 Python 代码时有两个常见烦恼:
- 代码风格不统一:缩进、引号、行宽各写各的,团队里互相"打架";
- 低级错误靠肉眼抓:未使用的变量、拼错的导入,review 时才能发现。
传统做法是分别装 black 管格式、flake8/pylint 管检查。而Ruff 把 format 和 check 合二为一,用 Rust 编写,速度极快,核心就两个命令:
| 命令 | 作用 | 类比 |
|---|---|---|
ruff check | 静态检查(Lint) | 找出代码里的"毛病" |
ruff format | 代码格式化 | 把代码"排版"整齐 |
一张图看懂 cgft-llm 的学习版图:代码规范只是开胃菜,仓库里还有 RAG、function-calling 等完整的 LLM 实战项目 👇
快速上手:三步完成 Ruff 安装与首次检查
第一步:安装 Ruff
pip install ruff # 用 pip 安装 # 或者用 uv 作为全局工具安装(配合虚拟环境更佳) uv tool install ruff💡 如果你还没用过 uv,推荐先看仓库里的 uv 教程,它是目前最快的 Python 依赖管理工具。
第二步:检查并自动修复代码
ruff check . # 检查当前目录 ruff check --fix . # 自动修复可修复的问题 ruff check --diff . # 只看修复了哪些内容,不直接改文件第三步:格式化代码
ruff format . # 直接格式化 ruff format --check . # 只检查是否符合格式要求(CI 里常用)这三条命令跑完,你的项目代码风格就统一了。
新手必会的 Ruff 常用命令清单 📋
| 命令 | 用途 |
|---|---|
ruff check . | 静态检查当前目录 |
ruff check --fix . | 自动修复可修复问题 |
ruff check --watch . | 监听文件变更,边写边检查 |
ruff format . | 格式化代码 |
ruff rule E501 | 查看某条 Lint 规则的详细说明 |
ruff config lint | 查看当前生效的二级配置 |
两个实用小技巧:
- 遇到个别规则想临时跳过?在代码行尾加
# noqa: F401即可(谨慎使用); - Ruff 没有
ruff clean命令,想清缓存时删除项目根目录下的.ruff_cache/即可。
完整命令速查可参考仓库文档 03-open-source/docs/ruff.md。
最快配置方法:pyproject.toml 里的 3 个关键项
Ruff 会按「命令行 > pyproject.toml > ruff.toml/.ruff.toml」的优先级读取配置。大多数项目只需在pyproject.toml里加一小段:
[tool.ruff] line-length = 88 target-version = "py39" [tool.ruff.lint] select = ["E4", "E7", "E9", "F"] [tool.ruff.format] quote-style = "double"line-length:单行最大长度,默认 88;target-version:你的 Python 版本,影响规则判断;select:启用的规则集,E/F是最常用的一组。
想细看某条规则是干什么的,随时用ruff rule E501查询,比翻文档更快。
编辑器集成:VS Code 里保存即格式化 ⚡
- 在 VS Code 插件市场安装 Astral 官方发布的Ruff扩展;
- 开启Format on Save(保存时格式化);
- 扩展会自动通过
ruff server(LSP 服务器)在编辑器里实时显示诊断和快速修复。
装好后基本就不用记命令了:写代码时红线提示问题,保存时自动格式化,体验接近"无感规范"。
进阶玩法:用 pre-commit 让规范自动生效 🔒
手动跑命令难免忘记,更好的方式是让 Git 在提交前自动帮你检查。仓库里的 pre-commit 教程 讲了完整流程:
pip install pre-commit pre-commit install # 启用提交前钩子 pre-commit run --all-files # 对全部文件跑一次检查之后每次git commit,格式化与 Lint 检查都会自动执行,团队代码风格从此"零人为"。
写在最后
Ruff 把 Python 代码格式化与静态 Lint 合并成一条命令,速度快、配置简单,是新手入门 Python 代码规范的最佳选择。cgft-llm 的「动手加入开源」系列还配有uv 依赖管理、pre-commit 提交检查、pytest 测试的完整视频教程(见 README.md),把这几篇学完,你的 Python 工程化基础就齐了。想获取全部资料:
git clone https://gitcode.com/echonoshy/cgft-llm【免费下载链接】cgft-llmcgft-llm 是一个学习大语言模型(LLM)开发的开源资源。它提供代码、文档和视频教程,帮助用户通过实践掌握前沿核心 LLM 技术项目地址: https://gitcode.com/echonoshy/cgft-llm
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考