I can't figure out what does the print(__doc__)
do at the beginning of a script, like in this Scikit example.
I have been looking for Python docstrings in google, and it seems __doc__
is useful to provide some documentation in, say, functions. But I can't see what does __doc__
do in the middle of a script.
it seems
__doc__
is useful to provide some documentation in, say, functions
This is true. In addition to functions, documentation can also be provided in modules. So, if you have a file named mymodule.py
like this:
"""This is the module docstring."""
def f(x):
"""This is the function docstring."""
return 2 * x
You can access its docstrings like this:
>>> import mymodule
>>> mymodule.__doc__
'This is the module docstring.'
>>> mymodule.f.__doc__
'This is the function docstring.'
Now, back to your question: what does print(__doc__)
do? Simply put: it prints the module docstring. If no docstring has been specified, __doc__
defaults to None
.