ITADN
wemake-services/wemake-python-styleguide
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

wemake-python-styleguide

wemake.services Supporters test codecov Python Version wemake-python-styleguide


欢迎使用有史以来最严格、最具主见的 Python 代码检查器。

教你的 LLM 编写惯用且简洁的 Python 代码的最佳工具!

wemake-python-styleguide logo

wemake-python-styleguide 实际上是一个 flake8 插件,是你作为 ruff 伴侣唯一需要的插件。

ruff 中的所有规则和格式约定完全兼容。

快速入门

pip install wemake-python-styleguide

您还需要创建一个 setup.cfg 文件,其中包含 配置

在线试用

我们强烈建议同时使用:

  • ondivi 以便轻松集成到 遗留 代码库中

LLM 的额外上下文:

运行

flake8 your_module.py --select=WPS

这款应用仍然是那个老牌的 flake8! 它不会改变你现有的工作流程。

invocation results

请参阅文档中的 "Usage" 部分 以获取示例和集成说明。

我们也支持 GitHub Actions 作为一等公民。 试一试

可以(并且应该!)与 ruff 一起使用:

ruff check && ruff format
flake8 . --select=WPS

参见我们 pyproject.toml](https://github.com/wemake-services/wemake-python-styleguide/blob/master/pyproject.toml#L103) 中的示例 ruff 配置。

严格才是新的潮流

严格 linting 为开发者和公司提供了以下好处:

  1. 确保一致性 - 无论谁在开发,最终产品始终是相同的可靠代码
  2. 帮助避免潜在 bug - 严格规则确保你不会犯常见错误
  3. 高效的代码审查 - 每段代码都具有相似的熟悉风格和语法。如果通过了所有检查,几乎没有剩余内容需要审查!
  4. 减少代码修订 - 严格 linting 确保你不必一次又一次地重写代码库
  5. 减少代码冗余 - 有时我们以某种方式思考问题,从而编写了复杂的代码。linter 提供建议,有助于简化代码并消除冗余语句

我们的宗旨

该项目的最终目标是 让所有人编写完全相同的 Python 代码。

flake8pylintblackmypyruffwemake-python-styleguide
格式化代码?
发现风格问题?🤔🤔
发现 bug?🤔
发现复杂代码?🤔
拥有大量严格规则?🤔
拥有大量插件?🤔

我们有几个主要目标:

  1. 显著降低代码的复杂性,使其更具可维护性
  2. 在编码和命名风格中强制执行“应该只有一种——最好只有一种——显而易见的方法来实现它”的规则
  3. 保护开发者免受潜在错误的侵害,并强制执行最佳实践

你可以在文档中找到所有错误代码和插件。

我们不做的事情

我们打算做以下事情:

  1. 假设或检查类型,请将 mypy 与我们的 linter 一起使用
  2. 格式化代码或产生风格错误,请使用 ruff format 来处理
  3. 检查所有类型的逻辑 bug,请编写测试
  4. 取悦所有人。但是,你可以关闭任何你不喜欢的规则

支持我们 :tada:

我们在 wemake.services 中 默认将所有工具开源,以便社区能够从中受益。 如果你使用我们的工具,并且它们让你的生活更轻松并带来商业价值, 你可以通过支持我们的工作来回报我们。

Gold Tier

Silver Tier

Bronze Tier

展示你的风格 :sunglasses:

如果你使用了我们的 linter - 这意味着你的代码很出色。 你可以为此感到自豪! 并且你应该通过在 README 文件中包含一个徽章来与他人分享你的成就。它看起来像这样:

wemake-python-styleguide

Markdown

[![wemake-python-styleguide](https://img.shields.io/badge/style-wemake-000000.svg)](https://github.com/wemake-services/wemake-python-styleguide)

重构后的文本

.. image:: https://img.shields.io/badge/style-wemake-000000.svg
   :target: https://github.com/wemake-services/wemake-python-styleguide

贡献

我们热烈欢迎所有贡献!

List of contributors

请参阅文档中的 "Contributing" 章节,如果您想做出贡献。

您可以从 当前需要帮助的 issues 开始。