[Python] Comment écrire une docstring conforme à PEP8

Si vous ne suivez pas les règles PEP8, votre chien aboyera!?

python a un guide de style et une norme de codage appelés PEP8. Dans le cas d'une équipe, en vérifiant le code pour voir s'il respecte la convention PEP8, il sera aligné dans un style d'écriture commun, le rendant plus lisible et plus facile à développer. Vous pouvez vérifier PEP8 lorsque vous poussez vers github, etc. ou lorsque vous effectuez une demande d'extraction. À ce stade, les outils CI sont utilisés pour effectuer des tests et vous informer de tout point qui enfreint les règles. Un de ces outils est reviewdog. ファイル名

Si vous agissez contrairement aux règles PEP8, vous serez aboyé par ce chien. .. ファイル名

On m'a dit que le chien n'arrêtait pas d'aboyer en raison des erreurs H404 et H405 liées à la docstring, et j'ai fait de mon mieux pour corriger le code et laisser le chien me pardonner.

Contenu du code d'erreur H4xx

Le code d'erreur de la série H4xx est lié à ** docstring **. La docstring est l'endroit où vous écrivez sur une fonction ou une méthode de classe lorsque vous la créez. Au fait, cela a l'air bien docstring, ce qui fait aboyer les chiens! !! (Pas entièrement conforme à PEP8)

def docstring_sample(hoge1: str):
    """ 
Ceci est le docstring.

S'il y a un argument, il sera expliqué ici. (Il existe des modèles, veuillez donc les consulter.)
Cette fois dans un style numpy

    Parameters
    ----------
        hoge1 : str
Sortie de la chaîne de caractères saisie ici"""
    print(hoge1)

Il existe de nombreux autres codes d'erreur [ici](https://blog.sideci.com/about-style-guide-of-python-and-linter-tool-pep8-pyflakes-flake8-haking-pyling -7fdbe163079d) est bien organisé!

Jetons un coup d'œil au contenu de 4xx!

Je ne suis pas bon en anglais, j'ai donc eu du mal à comprendre H404 et H405 ... Je vais le traduire (c'est une traduction gratuite)

à propos de ça.

Quand je lis ceci, je "Je vois, cela signifie que dans l'exemple précédent, il n'y avait pas de saut de ligne à la fin, et il n'y avait pas d'espace au début, alors réécrivons-le." Est-ce que ça veut dire quelque chose comme ça?

def docstring_sample(hoge1: str):
    """ 

Une fonction qui génère l'argument hoge1. (Parce qu'on m'a dit d'écrire un résumé au début)
Ceci est le docstring.

S'il y a un argument, il sera expliqué ici. (Il existe des modèles, veuillez donc les consulter.)
Cette fois dans un style numpy

    Parameters
    ----------
        hoge1 : str
Sortie de la chaîne de caractères saisie ici
    """
    print(hoge1)

Cependant, avec cela, ** le chien aboie **. Le code d'erreur est H405. Pourquoi. .. Alors je l'ai fait fondre pendant quelques heures. (Pour moi, c'est une règle que vous ne pouvez pas fusionner avec le maître tant que le chien aboie ...)

approche

Après quelques heures à faire diverses choses, il a finalement été reconnu par le chien! !! C'est

Écrivez H405 au tout début de la docstring!

En d'autres termes, rédigez un résumé avant de rompre une ligne-> rompre une ligne.

Enfin, nous avons une docstring conforme à la convention PEP8!

def docstring_sample(hoge1: str):
    """Une fonction qui génère l'argument hoge1.
    
Ceci est le docstring.
S'il y a un argument, il sera expliqué ici. (Il existe des modèles, veuillez donc les consulter.)
Cette fois dans un style numpy

    Parameters
    ----------
        hoge1 : str
Sortie de la chaîne de caractères saisie ici
    """
    print(hoge1)

Au fait, si vous n’écrivez qu’une seule ligne de docstring, vous n’avez pas besoin de casser le «» «» à la fin de la phrase.

def docstring_sample(hoge1:str):
    """Fonction qui génère l'argument hoge1"""
    print(hoge1)

Résumé

Dans PEP8, vous pouvez ignorer cela comme prévu, non? Je pense qu'il y en a plusieurs. (Limitation du nombre de caractères sur une ligne) Cependant, si vous vous disciplinez et que vous l'écrivez de manière légale, cela vous donnera un sentiment d'accomplissement! Essayez-le!

Voici quelques références! Je me réfère également au style numpy et je l'utilise toujours! Merci d'être si facile à comprendre!

Les références

https://blog.sideci.com/about-style-guide-of-python-and-linter-tool-pep8-pyflakes-flake8-haking-pyling-7fdbe163079d

[Python] Apprenez à écrire une docstring pour améliorer la lisibilité (style NumPy)

Recommended Posts

[Python] Comment écrire une docstring conforme à PEP8
Comment écrire une classe méta qui prend en charge à la fois python2 et python3
Comment écrire un type liste / dictionnaire de Python3
Comment rédiger un test de traitement utilisant BigQuery
Qiita (1) Comment écrire un nom de code
[Python] Comment rendre une classe itérable
[Python] Comment convertir une liste bidimensionnelle en liste unidimensionnelle
Ecrire le test dans la docstring python
[Python] Comment inverser une chaîne de caractères
Comment obtenir stacktrace en python
Comment écrire une docstring pour créer un document tuple nommé avec sphinx
Comment écrire Ruby to_s en Python
Comment exécuter des scripts Maya Python
Un mémorandum sur la façon d'écrire des pandas que j'ai tendance à oublier personnellement
Comment écrire une chaîne de caractères lorsqu'il y a plusieurs lignes en python
Comment utiliser hmmlearn, une bibliothèque Python qui réalise des modèles de Markov cachés
[Introduction à Python] Comment écrire une chaîne de caractères avec la fonction format
Comment lire un fichier CSV avec Python 2/3
Comment ouvrir un navigateur Web à partir de python
Comment incorporer des variables dans des chaînes python
Comment créer un fichier JSON en Python
Comment générer un objet Python à partir de JSON
Comment ajouter un chemin de recherche de module Python
Pourquoi Python doit-il écrire un deux-points?
Comment écrire une instruction ShellScript Bash for
Comment notifier les canaux Discord en Python
[Python] Comment dessiner un histogramme avec Matplotlib
Comment écrire un document tuple nommé en 2020
[Go] Comment écrire ou appeler une fonction
Je veux écrire dans un fichier avec Python
Comment écrire une instruction de cas bash ShellScript
Comment installer Python
Comment installer python
Comment écrire des variables d'environnement que vous ne voulez pas mettre sur [GitHub] Python
Comment installer la bibliothèque Python qui peut être utilisée par les sociétés pharmaceutiques
20e Comment écrire des problèmes en temps réel hors ligne en Python
Comment convertir / restaurer une chaîne avec [] en python
Comment écrire une interface graphique à l'aide de la commande maya
[Python] Comment dessiner un graphique linéaire avec Matplotlib
Comment configurer un environnement Python à l'aide de pyenv
Comment écrire une concaténation de chaînes sur plusieurs lignes en Python
Je veux écrire en Python! (2) Écrivons un test
[Python] Comment développer des variables dans une chaîne de caractères
Comment créer un environnement Django (python) sur Docker
Comment créer un package Python à l'aide de VS Code
[Python] Un mémo pour écrire du CSV verticalement avec Pandas
Comment enregistrer une table récupérée par python en csv
[Python] Une bibliothèque pratique qui convertit les kanji en hiragana
Écrire du code dans UnitTest une application Web Python
[Python] Comment créer un histogramme bidimensionnel avec Matplotlib
Comment exécuter une commande à l'aide d'un sous-processus en Python
Comment créer un environnement Python sur Amazon Linux 2
[Introduction à Python] Comment écrire des instructions répétitives à l'aide d'instructions for
[Python] Comment appeler une fonction de c depuis python (édition ctypes)
[Python] Comment dessiner un diagramme de dispersion avec Matplotlib
Comment utiliser pip, un système de gestion de paquets indispensable pour utiliser Python