Repolode
psf

psf/black

Black 是一款风格固定、结果确定的 Python 代码格式化工具,直接改写文件并尽量产生最小差异。

Star
41,948
Fork
2,940
未关闭 Issue
298
最近提交
11小时前

这是什么?

Black 是一款风格固定的 Python 代码格式化工具,会原地重新格式化整个文件。它提供的风格选项很少,让不同项目的代码看起来一致,也省去了关于排版的争论。它的设计目标是产生尽可能小的 diff,让代码审查聚焦在内容本身。

Black 需要 Python 3.10 或更高版本,可通过 pip 安装;安装 jupyter 扩展后还能格式化 Jupyter Notebook。对于不想安装 Python 的用户,项目也提供独立的可执行文件。配置可写在 pyproject.toml 中,包括 include 和 exclude 等规则,但默认设置通常无需修改即可使用。

为了安全,Black 会检查格式化后的代码解析出的 AST 是否与原代码等价,也可以用 --fast 参数跳过这一检查。项目公开了代码风格文档和稳定性策略,风格变动主要限于修复问题和支持新的 Python 语法。

核心功能

  • 01原地重新格式化 Python 文件,风格选项少且固定。
  • 02生成尽量小的 diff,让代码审查更聚焦。
  • 03默认检查格式化前后的 AST 是否等价。
  • 04安装 jupyter 扩展后可格式化 Jupyter Notebook。
  • 05从 pyproject.toml 读取项目配置。

适用场景

  • 在 Python 团队或代码仓库中统一代码风格。
  • 作为 pre-commit 钩子或在 CI 中自动检查格式。
  • 统一格式化 Jupyter Notebook 与普通源码文件。

快速上手

  1. 1

    使用 pip 安装 Black

    pip install black
  2. 2

    格式化文件或目录

    black {source_file_or_directory}

使用前须知

  • 运行需要 Python 3.10 或更高版本。

标签

常见问题

black 是什么?
Black 是一款风格固定、结果确定的 Python 代码格式化工具,直接改写文件并尽量产生最小差异。 Black 是一款风格固定的 Python 代码格式化工具,会原地重新格式化整个文件。它提供的风格选项很少,让不同项目的代码看起来一致,也省去了关于排版的争论。它的设计目标是产生尽可能小的 diff,让代码审查聚焦在内容本身。
black 可以免费使用吗?用的什么许可证?
black 以 MIT 许可证开源。用于商业产品前,请先确认许可证条款。
black 还在维护吗?
活跃维护中。black 最近一次提交是在 2026年10月19日。
black 适合用来做什么?
在 Python 团队或代码仓库中统一代码风格。 作为 pre-commit 钩子或在 CI 中自动检查格式。 统一格式化 Jupyter Notebook 与普通源码文件。
black 怎么安装和运行?
使用 pip 安装 Black: pip install black 格式化文件或目录: black {source_file_or_directory}
在哪里获取 black?
源代码和安装说明在 GitHub 上:https://github.com/psf/black

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

相关项目