Skip to content

Python 格式校验

约 431 字大约 1 分钟

2025-01-17

Python中我们可以使用flake8来对我们的.py文件进行格式校验,相关的库还有hackingflake8-chart

安装

$ pip3 install flake8 hacking flake8-chart

使用

具体使用方法参考flake8。我这里主要说一下,结合pre-commitflake8集成到git hooks中。

集成到git流程中

  1. 安装pre-commit
$ pip3 install pre-commit
  1. 编写flake8的配置文件.flake8
[flake8]
# 忽略 E711 错误
ignore = E711
# 设置最大行长度为 120 字符
max-line-length = 120
# 检查所有类型的错误和警告
select = E, W, F, C
# 在忽略列表中添加更多特定错误
# F841 未使用的变量
extend-ignore = F841
# 排除以下目录或文件
exclude = 
    .venv/
    build/
    dist/
    docs/_build/
    *.log
    migrations/*.py
  1. 编写pre-commit的配置文件.pre-commit-config.yaml
repos:
  - repo: https://github.com/PyCQA/flake8
    rev: 7.0.0
    hooks:
      - id: flake8
        args:
            - --max-line-length=120

4.添加pre commitgit钩子中

执行如下命令:

$ pre-commit install

如果已经添加过,但是更新了.pre-commit-config.yaml文件,可以直接更新。

$ pre-commit autoupdate

或者,清除或卸载之后再添加。

$ pre-commit clean
$ pre-commit uninstall
$ pre-commit install

执行完上面的命令后,pre commit就添加到git钩子中了。后续执行git commit命令时,就会触发pre commit,然后自动执行flake8,校验.py文件。

延伸阅读

Python 格式自动修复

Python 格式校验

Python项目如何优雅的生成依赖文件

整理头文件

参考

Github flake8

Github pre-commit

pre-commit文档