Une docstring est une chaîne de caractères qui annote une section de code source . Elle offre la même utilité qu'un commentaire , mais contrairement à ce dernier, il s'agit d'une chaîne de caractères conservée dans le programme en cours d'exécution . Certains outils de développement affichent les informations de la docstring dans le cadre d'un système d'aide interactif .
Les langages de programmation qui prennent en charge les docstrings incluent Python , Lisp , Elixir , Clojure , Gherkin , Julia et Haskell . Les outils qui exploitent le texte des docstrings incluent cobra-doc (Cobra), doctest (Python), Pydoc (Python), Sphinx (Python).
Markdown est le langage de balisage de facto privilégié par Elixir pour les docstrings :Zézayer
En Lisp, une chaîne de documentation est appelée « docstring ». La norme Common Lisp stipule qu'une implémentation particulière peut choisir de ne pas inclure de docstrings. Lorsqu'elles sont conservées, les docstrings peuvent être consultées et modifiées à l'aide de la fonction DOCUMENTATION. Par exemple :
( defun foo () "salut" nil ) ( documentation #' foo 'function ) => "salut"
Python
En Python, une docstring est une chaîne de caractères littérale qui suit la définition d'un module, d'une classe ou d'une fonction. Elle doit impérativement contenir une chaîne de caractères littérale, et aucun autre type d'expression. La docstring est accessible via l' __doc__attribut `docstring` de l'élément de code associé et la helpfonction `docstring`.
Le code Python suivant déclare les chaînes de documentation pour chaque élément du programme :
Si le fichier est enregistré sous le nom mymodule.py , voici une session interactive montrant comment accéder aux chaînes de documentation :
>>> import mymodule >>> help ( mymodule ) La documentation du module >>> help ( mymodule . MyClass ) La documentation de la classe >>> help ( mymodule . MyClass . my_method ) La documentation de la méthode