2017-10-21 12 views
0

Je travaille sur un projet Python collaboratif. Mon IDE (PyCharm) signale les «problèmes mineurs» pour les lignes de code de plus de 120 caractères à cause de PEP8. Cependant, ceci se produit seulement quand j'ai un grand commentaire expliquant un code compliqué - le code lui-même n'excède jamais la limite. Devrais-je transformer ces longs commentaires en plusieurs commentaires pour respecter les lignes directrices ou les laisser tels quels?La limite de longueur de ligne PEP8 de Python s'applique-t-elle aux commentaires?

+1

, les lignes directrices permettent pep8 79 caractères dans une ligne. il s'applique aussi aux commentaires, mais encore une fois, ce ne sont que des lignes directrices. Suivre pep8, c'est juste maintenir la cohérence dans votre code. –

+0

Ceci est une question d'opinion/style et n'a pas de réponse utile. Je suggère de mettre de longs commentaires au-dessus de la ligne à laquelle ils se rapportent, mais cela varie. Aussi pep8 est juste une suggestion, pas un mandat. – Iguananaut

+0

Oui, la longueur de ligne PEP-8 s'applique également aux commentaires. Vous n'avez pas dit s'il s'agissait de commentaires en ligne ou sur une ligne distincte du code, mais FWIW, PEP-8 recommande que les commentaires en ligne soient utilisés avec parcimonie. –

Répondre

0

Oui, les directives s'appliquent à toutes les lignes dans la source, y compris les commentaires. C'est parce qu'ils aident à définir les attentes pour les largeurs d'éditeur. Si la recommandation de longueur de ligne ne s'appliquait pas aux commentaires, vous deviez toujours faire défiler la fenêtre de votre éditeur pour pouvoir lire les commentaires.

pep8 est encore une ligne directrice, pas une règle stricte de la loi, vous pouvez l'ignorer à volonté. Je vous recommande de vous y tenir où que vous collaboriez avec un plus grand nombre de personnes, même si vous avez tous des écrans plus larges. Personnellement, j'aime pouvoir adapter côte à côte plusieurs onglets d'éditeur, par exemple.

à Facebook, nous utilisons flake8-bugbear à douces longueurs de ligne de -enforce, avec une tolérance de 10%:

B950: Ligne trop longue. Ceci est un équivalent pragmatique du E501 de pycodestyle: il considère « max-ligne de longueur » mais ne se déclenche que lorsque la valeur a été dépassée de plus de 10%. Vous ne serez plus obligé de reformater le code en raison de la parenthèse de fermeture étant un caractère trop loin pour satisfaire le linter. En même temps, si vous violez de manière significative la longueur de ligne, vous recevrez un message indiquant la limite réelle. Ceci est inspiré par les discours « Au-delà PEP 8 » de Raymond Hettinger et patrouille routière ne vous empêche si vous conduisez trop vite < 5 mph. Désactivez E501 pour éviter les avertissements en double.

Oblig disclaimer: Je participe à flake8-croquemitaine. généralement