Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python multiline comments

I am struggling with multi line comments in Python, I understood I can use # at the start of every line of multi line comments but there is also another way of using """ at the start and end of the comment; however, in my interpreter the """ method gives an output instead of ignoring the comment.

>>> """this should
be a multi
line comment"""

And my interpreter gives the following output:

'this should\nbe a multi\nline comment'

Can someone explain it?

like image 479
Aryan Bansal Avatar asked Nov 19 '25 01:11

Aryan Bansal


2 Answers

Triple quoted strings are used as comments by many developers but it is actually not a comment. It is similar to regular strings in python but it allows the string to be multi-line. You will find no official reference for triple quoted strings to be a comment.

In python, there is only one type of comment that starts with hash # and can contain only a single line of text.

According to PEP 257, it can however be used as a docstring, which is again not really a comment.

def foo():
    """
    Developer friendly text for describing the purpose of function
    Some test cases used by different unit testing libraries
    """
   <body of the function>
   

You can just assign them to a variable as you do with single quoted strings:

x = """a multi-line text
enclosed by
triple quotes
"""

Furthermore, if you try it in a repl, triple quoted strings get printed, had it really been a comment, should it have been printed?:

>>> #comment
>>> """triple quoted"""
'triple quoted'
like image 72
ThePyGuy Avatar answered Nov 20 '25 14:11

ThePyGuy


This is very easy to accomplish in python.

# This is a single-line comment

'''
This is a multi-line comment
'''

Just put the comments in ''' and put whatever you want inside of them!

like image 43
daniscode1 Avatar answered Nov 20 '25 15:11

daniscode1



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!