un style uniforme rend le code lisible et réduit les diffs inutiles.
objectifs
- formater avec black
- linter avec ruff (ou flake8)
- intégrer à l’éditeur (format on save)
explication détaillée
blackreformate tout selon PEP 8ruffdétecte variables inutiles, imports morts, etc.- configuration minimale via
.ruff.tomletpyproject.toml
exemples exécutables
pip install black ruff
black src/
ruff check src/
# .ruff.toml minimal
line-length = 100
select = ["E","F","W","I"]
# pyproject.toml (extrait pour black)
[tool.black]
line-length = 100
target-version = ["py311"]
bonnes pratiques
- activer format on save dans l’éditeur
- corriger les erreurs bloquantes du linter, documenter les exceptions
- éviter d’avoir plusieurs formatteurs en concurrence
pièges courants
- ignorer systématiquement le linter
- config contradictoire entre outils
- confondre style (automatisable) et conception (réflexion)
exercices
- formater un dossier
src/puis corriger les alertesruff. - ajouter import sorting (
ruff isort). - intégrer black et ruff en pre-commit plus tard (bonus).