Ruff 是用 Rust 编写的极快 Python 代码检查与格式化工具,一个工具即可替代 Flake8、isort、Black 等多个工具,适合大型项目与持续集成场景。
- 0.17.3
- 发布于
- 1 天前
- 50,317
- 星标
- 2,103,933
- 下载
- 同步于
- 1 天前
最新版本
0.17.32026年10月27日 08:35下载慢?可在上方随时切换镜像源
项目说明
项目概述
Ruff 是用 Rust 编写的 Python 静态检查与代码格式化工具,以极高的执行速度著称,比既有工具快 10 到 100 倍。它内置 900 多条规则,可一站式替代 Flake8 及其众多插件、Black、isort、pydocstyle、pyupgrade 等工具。Ruff 通过 pip 即可安装,原生支持 pyproject.toml 配置,已被 Airflow、FastAPI、pandas 等主流开源项目采用。
| 项目 | 内容 |
|---|---|
| 语言 | Rust |
| 目标代码 | Python |
| 安装方式 | pip、uv、pipx、独立安装器 |
| 许可 | MIT |
一个工具管住 Python 代码的风格与质量,还快到可以放进提交钩子。
主要功能
- 极速检查:比 Flake8 等传统 linter 快 10 到 100 倍
- 代码格式化:内置 formatter,与 Black 输出兼容
- import 排序:内建与 isort 等价的排序功能
- 900+ 规则:原生重实现 flake8-bugbear 等热门插件规则
- 自动修复:支持自动修复问题,例如删除未使用的 import
- 缓存加速:内置缓存避免重复分析未变更文件
- 灵活配置:原生支持 pyproject.toml 与层级级联配置
- 编辑器集成:提供 VS Code 等编辑器的官方插件
适用人群
- Python 开发者
- 开源项目维护者
- 关注 CI 检查速度的工程团队
- monorepo 管理者
- 需要统一代码风格的团队
快速上手
- 安装 Ruff
pip install ruff- 检查当前目录代码
ruff check- 格式化当前目录代码
ruff format- 在 pyproject.toml 中按需配置规则与行为
核心优势
- 速度极快:全仓库扫描常在亚秒级完成,可放心用于提交钩子
- 多合一:一个工具替代多个 linter 与 formatter,简化工具链
- 迁移平滑:与既有工具输出兼容,切换成本低
- monorepo 友好:层级与级联配置适合大型代码库
系统要求
| 项目 | 要求 |
|---|---|
| 操作系统 | Linux、macOS、Windows |
| 目标语言 | Python 3.x |
| 运行依赖 | 单一可执行文件,无需 Python 运行时 |
注意事项
- 规则取舍:900 多条规则应按项目实际启用,避免告警噪音
- 迁移策略:从 Flake8 迁移时建议先对照规则映射再切换
- 版本升级:新版本可能调整默认行为,升级前查看变更日志
历史版本
排序