I am following the Python tutorial and at some point they talk about how the 1st statement of a function can be a String Literal. As far as the example goes, this String Literal seems to be done with three "
s, giving in the example
"""Print a Fibonacci series up to n."""
According to this documentation, this would be used mainly to create some kind of automatically produced documentation.
So I am wondering if someone here could explain to me what are these string literals exactly?
What you're talking about are called docstrings.
def foo():
"""This function does absolutely nothing"""
Now, if you type help(foo)
from the interpreter, you'll get to see the string that I put in the function. You can also access that string by foo.__doc__
Of course, string literals are just that -- literal strings.
a = "This is a string literal" #the string on the right side is a string literal, "a" is a string variable.
or
foo("I'm passing this string literal to a function")
They can be defined in a bunch of ways:
'single quotes'
"double quotes"
""" triple-double quotes """ #This can contain line breaks!
or even
#This can contain line breaks too! See?
''' triple-single
quotes '''
But for docstrings, triple-double quotes are recommended, at least by PEP 257.