Repolode
astral-sh

astral-sh/ruff

用 Rust 编写的极速 Python 代码检查与格式化工具,内置 900 多条规则。

可替代:BlackFlake8

Star
50,197
Fork
2,534
未关闭 Issue
2,220
最近提交
9小时前

这是什么?

Ruff 是一个用 Rust 编写的 Python 代码检查器和格式化工具,可以发现代码中的错误、风格问题和过时写法,并自动修复其中许多问题。它的目标是用一个命令和一套统一配置替代 Flake8(及其插件)、Black、isort、pydocstyle、pyupgrade 等多个工具。

内置超过 900 条规则,其中不少是用 Rust 原生重新实现的 Flake8 插件规则。规则通过 pyproject.toml、ruff.toml 或 .ruff.toml 配置启用,默认规则集无需配置即可使用。内置缓存机制,会跳过自上次运行后未改动的文件。

可通过 pip、uv、pipx、Homebrew、Conda 安装,并提供 VS Code 扩展、pre-commit 钩子和 GitHub Action 等集成方式。配置支持分层级联查找,适合 monorepo 项目。

核心功能

  • 01内置 900 多条检查规则,许多规则原生复现了 Flake8 插件
  • 02提供与 Black 兼容的代码格式化功能
  • 03通过 --fix 自动修复大量已发现的问题
  • 04缓存检查结果,跳过未改动的文件
  • 05支持 pyproject.toml 或 ruff.toml 配置,并支持分层级联配置

适用场景

  • 用一个工具替代 Python 项目中的 Flake8、Black 和 isort
  • 在 pre-commit 钩子或 CI 流水线中运行代码检查和格式检查
  • 借助分层配置快速检查大型 monorepo
  • 在 VS Code 等编辑器中获得实时提示和自动修复

快速上手

  1. 1

    使用 uv(推荐)安装 Ruff

    uv tool install ruff@latest
  2. 2

    使用 pip 安装 Ruff

    pip install ruff
  3. 3

    检查当前目录下的所有文件

    ruff check
  4. 4

    格式化当前目录下的所有文件

    ruff format

标签

常见问题

ruff 是什么?
用 Rust 编写的极速 Python 代码检查与格式化工具,内置 900 多条规则。 Ruff 是一个用 Rust 编写的 Python 代码检查器和格式化工具,可以发现代码中的错误、风格问题和过时写法,并自动修复其中许多问题。它的目标是用一个命令和一套统一配置替代 Flake8(及其插件)、Black、isort、pydocstyle、pyupgrade 等多个工具。
ruff 可以免费使用吗?用的什么许可证?
ruff 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
ruff 还在维护吗?
活跃维护中。ruff 最近一次提交是在 2026年10月21日。
ruff 适合用来做什么?
用一个工具替代 Python 项目中的 Flake8、Black 和 isort 在 pre-commit 钩子或 CI 流水线中运行代码检查和格式检查 借助分层配置快速检查大型 monorepo 在 VS Code 等编辑器中获得实时提示和自动修复
ruff 怎么安装和运行?
使用 uv(推荐)安装 Ruff: uv tool install ruff@latest 使用 pip 安装 Ruff: pip install ruff 检查当前目录下的所有文件: ruff check 格式化当前目录下的所有文件: ruff format
在哪里获取 ruff?
源代码和安装说明在 GitHub 上:https://github.com/astral-sh/ruff

概要由 AI 根据项目 README 生成;GitHub 数据每日更新。

相关项目