Python Multiline Comments Or How To Comment Multiple Lines
Python has several ways to comment multiple lines in Python. One option is to add #
at the start of each line. PEP 8 and bigger part of the community prefers to comment out like:
# This is a comment
# with multiple lines
instead of:
"""
This is a comment
with multiple lines
"""
Multiline comments in Python can start with '''
and end with '''
. Multiline comment is created simply by placing them inside triple-quoted strings: '''
/"""
and '''
/"""
.
Both examples have valid syntax in Python.
How to comment out multiple lines in Python
In Python there is a special symbol for comments which is #
. Some languages like Java have native support for multiline comments.
Python multiline comment would look like to:
# This
# is a
# multi-line
# comment
This is the default comment for most popular Python IDEs like PyCharm, Sublime, VS code.
Python multiline comments and docstrings
Guido van Rossum (the Python creator, Python BDFL) tweeted once a "pro tip" for Python multiline comments:
According to this tip you can do comments in this way:
"""line1
line2
line3"""
'''line1
line2
line3'''
What is a docstring? The first statement in a class, method, function or module definition which is a string is called a docstring. Example:
def is_palindrome(word):
"""Check if word is a palindrome."""
str(word) == str(word)[::-1]
Note 1: Even if a docstring contains only one line, triple quotes should be used because it's easier to expand it in future.
Note 2: For one liners it is recommended the quotes to be on the same line as the comment.
Multiline docstrings example
Descriptive multiline docstrings help for understanding and maintaining the code. Here you can find an example for such:
def complex(real=0.0, imag=0.0):
"""Form a complex number.
Keyword arguments:
real -- the real part (default 0.0)
imag -- the imaginary part (default 0.0)
"""
if imag == 0.0 and real == 0.0:
return complex_zero
...
Many projects and organizations are using this kind of comments when they want to have good documentation.
The example image below multiline commend and docstring:
Shortcuts to comment multiple lines in Python and most popular IDEs
For commenting several lines in most popular IDEs you can use next shortcuts.
First you need to select the lines and then press:
- Pycharm - CTRL + / - comment / uncomment
- Eclipse - CTRL + /- comment / uncomment
- Sublime - CTRL + /- comment / uncomment
- Atom - CTRL + /- comment / uncomment
- IDLE - CTRL + ALT + 3 - comment, CTRL + ALT + 4 - uncomment
- Notepad++ - CTRL + Q - comment / uncomment
- vim - CTRL + Q / kbd>CTRL + V - comment / uncomment
- VS Code - CTRL + / - comment / uncomment
Note: If you like to add a multiline docstring than you can use different combination:
- Pycharm - Alt + Enter inside the function and select Insert documentation string stub
- VS Code - Alt + Shift + A - comment / uncomment
PyCharm comment multiple lines
Pycharm comment shortcut
The shortcut to comment multiple lines in Python and PyCharm are:
- Windows or Linux: Ctrl + /
- Mac OS: Command + /
Pycharm comment out multiple lines
To comment several lines of code in the Pycharm follow next steps:
- Select the code lines
- Menu
- Code
- Comment with Line Comment
- Windows or Linux: Ctrl + /
- Mac OS: Command + /
result:
# time.sleep(50 / 1000) # 50 ms
# time.sleep(5) # 5 secs
# time.sleep(60) # 1 min
Pycharm uncomment multiple lines
To uncomment commented lines in PyCharm you can do it by the same steps as commenting:
- Select the code lines
- Menu
- Code
- Comment with Line Comment
- Windows or Linux: Ctrl + /
- Mac OS: Command + /
result:
time.sleep(50 / 1000) # 50 ms
time.sleep(5) # 5 secs
time.sleep(60) # 1 min
Note: If you try to comment mixed lines code and comments then
- the first press Ctrl + / will comment all lines (adding the second comment symbol # # in front of the commented lines)
- the second one Ctrl + / will uncomment all lines (only the first comment sign)
Before
# time.sleep(50 / 1000) # 50 ms
# time.sleep(5) # 5 secs
time.sleep(60) # 1 min
time.sleep(60 * 60) # 1 hour
After
# time.sleep(50 / 1000) # 50 ms
# # time.sleep(5) # 5 secs
# time.sleep(60) # 1 min
# time.sleep(60 * 60) # 1 hour
Python remove all comments from a project with regex finders
You can delete all Python comments from your Python project by(in Pycharm):
- open replace Ctrl + R
- check regex
- use
- single line comment
.*#.*\n
* doc string line comment
""".*"""
* doc string with new lines inside
([^\(\.]"""[^\(]*)"""
- replace all with nothing
Demonstration:
remove Python multiline comment.
Finally you can watch video for Python comments in PyCharm:
How to remove/fold all python(java) comments in PyCharm/IntelliJ