
Pylint est un analyseur de code statique pour Python 2 ou 3. La dernière version prend en charge Python 3.9.0 et supérieur.
Pylint analyse votre code sans l'exécuter. Il vérifie les erreurs, applique une norme de codage, recherche des odeurs de code et peut faire des suggestions sur la façon dont le code pourrait être refactorisé.
Pour une utilisation de la ligne de commande, Pylint est installé avec:
pip install pylint
Ou si vous souhaitez également vérifier l'orthographe avec enchant (vous devrez peut-être installer la bibliothèque Enchanteur C):
pip install pylint[spelling]Il peut également être intégré dans la plupart des éditeurs ou des IDE. Plus d'informations peuvent être trouvées dans la documentation.
Pylint ne fait pas confiance à votre saisie et déduit les valeurs réelles des nœuds (pour commencer car il n'y avait pas de saisie lorsque Pylint a commencé) en utilisant sa représentation de code interne (astroïde). Si votre code est import logging as argparse , Pylint peut vérifier et savoir que argparse.error(...) est en fait un appel de journalisation et non un appel ArgParse. Cela rend Pylint plus lent, mais cela permet également à Pylint de trouver plus de problèmes si votre code n'est pas entièrement tapé.
[L'inférence] est la fonctionnalité de tueur qui nous fait utiliser [Pylint] dans notre projet malgré sa légère lente. - Utilisateur réaliste de Pylint, 2022
Pylint, n'a pas peur d'être un peu plus lent qu'il ne l'est déjà, est également beaucoup plus approfondi que les autres linceurs. Il y a plus de vérifications, y compris certaines opinions qui sont désactivées par défaut mais peuvent être activées à l'aide de la configuration.
Pylint n'est pas plus intelligent que vous: cela peut vous avertir des choses que vous avez consciencieusement faites ou vérifiez certaines choses qui ne vous soucient pas. Pendant l'adoption, en particulier dans un projet hérité où Pylint n'a jamais été appliqué, il est préférable de commencer par le drapeau --errors-only , puis de désactiver les congrès et les messages de refactor avec --disable=C,R et réévaluer progressivement et réactiver les messages à mesure que vos priorités évoluent.
Pylint est hautement configurable et permet d'écrire des plugins afin d'ajouter vos propres chèques (par exemple, pour les bibliothèques internes ou une règle interne). Pylint possède également un écosystème de plugins existants pour les cadres populaires et les bibliothèques tierces.
Note
Pylint prend en charge la bibliothèque standard Python hors de la boîte. Les bibliothèques tierces ne sont pas toujours prises en charge, donc un plugin peut être nécessaire. Un bon point de départ est PyPI qui renvoie souvent un plugin en recherchant pylint <library> . Pylint-Pydantic, Pylint-Django et Pylint-Sonarjson sont des exemples de tels plugins. Plus d'informations sur les plugins et comment les charger peuvent être trouvées sur les plugins.
Projects that you might want to use alongside pylint include ruff ( really fast, with builtin auto-fix and a large number of checks taken from popular linters, but implemented in rust ) or flake8 (a framework to implement your own checks in python using ast directly), mypy, pyright / pylance or pyre (typing checks), bandit (security oriented checks), black and isort (auto-formatting), autoflake (suppression automatisée des importations ou variables inutilisées), Pyupgrade (mise à niveau automatisé vers la syntaxe Python plus récente) et PyDocStringFormatter (PEP257 automatisé).
Pylint est expédié avec deux outils supplémentaires:
Nous accueillons toutes les formes de contributions telles que les mises à jour de la documentation, le nouveau code, la vérification des problèmes pour des doublons ou nous disant que nous pouvons les fermer, confirmant que les problèmes existent, créant des problèmes parce que vous avez trouvé un bug ou que vous vouliez une fonctionnalité, etc. Tout est très apprécié!
Veuillez suivre le code de conduite et vérifier les guides des contributeurs si vous souhaitez apporter une contribution au code.
Vous pouvez placer ce badge dans votre lecture pour faire savoir aux autres que votre projet utilise Pylint.
Apprenez à ajouter un badge à votre documentation dans la documentation du badge.
Pylint est, à quelques exceptions quelques exceptions ci-dessous, GPLV2.
Les fichiers d'icônes sont sous licence CC BY-SA 4.0:
Veuillez vérifier les coordonnées.
| Le soutien professionnel à Pylint est disponible dans le cadre de l'abonnement Tidelift. Tidelift offre aux équipes de développement de logiciels une seule source pour acheter et maintenir leur logiciel, avec des assurances de notes professionnelles des experts qui le connaissent le mieux, tout en s'intégrant de manière transparente aux outils existants. |