Maison  >  Article  >  développement back-end  >  Une étape simple pour rendre votre code Python plus propre

Une étape simple pour rendre votre code Python plus propre

王林
王林avant
2023-04-12 22:19:171184parcourir

C'est plus facile à dire qu'à faire. Nous savons tous que la lisibilité du code est très importante, mais nous écrivons toujours comme bon nous semble, sans tenir compte des astuces de type, de l'ordre d'importation et des spécifications PEP8. Aujourd'hui, je vais partager une petite astuce qui peut rendre votre code Python plus propre en une seule étape simple.

Il s'agit d'un pré-commit :

Une étape simple pour rendre votre code Python plus propre

vous permet de vérifier automatiquement si votre code répond aux spécifications souhaitées avant de le soumettre.

Avant de l'utiliser, installez-le avec pip :

pip install pre-commit

Créez ensuite deux fichiers dans le répertoire racine du projet : .pre-commit-config.yaml et pyproject.toml. Le contenu du fichier

.pre-commit-config.yaml est le suivant :

exclude: _pb2.py$
repos:
- repo: https://github.com/psf/black
rev: 22.3.0
hooks:
- id: black
args: [--skip-string-normalization]
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.0.1
hooks:
- id: check-docstring-first
- id: check-json
- id: check-merge-conflict
- id: check-yaml
- id: debug-statements
- id: end-of-file-fixer
- id: trailing-whitespace
- id: requirements-txt-fixer
- repo: https://github.com/pre-commit/pygrep-hooks
rev: v1.9.0
hooks:
- id: python-check-mock-methods
- id: python-use-type-annotations
- repo: https://github.com/pre-commit/mirrors-mypy
rev: "v0.910"
hooks:
- id: mypy
args:
[
--ignore-missing-imports,
--warn-no-return,
--warn-redundant-casts,
--disallow-incomplete-defs,
]
additional_dependencies: [types-all]
- repo: https://github.com/PyCQA/isort
rev: 5.9.3
hooks:
- id: isort
args: [--profile, black, --filter-files]

Il contient des outils tels que black, mypy, check-docstring-first, isort, etc. L'identifiant est l'outil correspondant Il peut. on peut dire que ce fichier de configuration est fondamentalement assez utilisé.

Dans le fichier .pre-commit-config.yaml, nous pouvons spécifier quels hooks seront utilisés, et dans pyproject.toml, nous pouvons spécifier les paramètres de ces hooks individuels. Le contenu du fichier

pyproject.toml est le suivant :

[tool.black]
line-length = 88
target-version = ["py38"]

[tool.isort]
profile = "black"
multi_line_output = 3

Les configurations pertinentes de black et isort sont configurées ici.

Ensuite, exécutez la commande d'installation de pré-commit dans le répertoire racine du projet pour installer le plug-in de pré-commit.

Ensuite, chaque fois que vous mettez à jour le code et soumettez le code, ces hooks seront déclenchés et les opérations suivantes seront automatiquement effectuées :

Tri de l'importation

Code au format PEP8

Vérifiez l'exactitude de vos fichiers yaml et json

Tapez check (si vous utilisez des astuces de type)

Une étape simple pour rendre votre code Python plus propre

Enfin

, vous pouvez copier ces deux fichiers dans le répertoire racine de votre projet, puis exécuter une installation avant la validation, de sorte qu'à chaque fois que vous soumettez le code, nettoyez le code, n'est-ce pas très pratique ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer