How can I comment out multiple cells in Jupyter Ipython / JupyterLab notebook? The code is in Python.
The keyboard shortcuts Ctrl + / on Microsoft Windows and Cmd + / on Mac OS X only work if the selected code is within one cell. However, if I select several cells, then these keyboard shortcut don't work anymore.
Selecting several cells can be done by clicking on the margin of cell, then holding CTRL or SHIFT, and clicking on the margin of another cell:
In order to comment on multiple lines at once in Jupyter Notebook, you have to select the required lines and then press the Ctrl + / . Then we select all the rows and press the Ctrl and / and voilà!
Let it be a single line code comment or a block code comment, when we use the shortcut (e.g. Ctrl + / on windows), the # should be indented the same amount as the code line, not be placed at the start of the line.
As stated in the comments, you can:
a) Convert all them to markdown (select and press m)
b) Go cell by cell selecting all text (control+a) and then (control + /) to comment
c) Merge all cells in one, and then comment. Unfortunately, I don't think this option is reversible
If anyone knows another option, I'd be happy to know about it!
There are two ways to solve the intention of having these cells treated as text:
1) in Jupyter, multi-select the cells and press m
for markdown; now they will behave like markdown/text which is just as good as commenting them out. Note that this process is reversible by multi-selecting the cells and pressing y
to convert the cells to code. A drawback of this approach is the formatting that will apply by default to your markdown cells. To have them appear like code but behave as text seems to require the manual intervention of wrapping each markdown cell in <pre>
tags as in: <pre>print("my code")</pre>
2) If there is a need to have them treated as code but commented out, the only way to do this without going one by one (that I could find), is to merge the cells into one, but that requires trickery when you have more than two cells. Once done, the command /
(or control /
on Windows) will work on multiple lines.
To do this: If only two cells involved
/
(windows or mac) to comment all code outFor more than two cells - try this:
/
(windows or mac)As observed by others - this process is not easily reversible. You can uncomment all the lines of code but splitting them back into their original cells would require manual effort I think.
I tested all of this in Anaconda Jupyter using a sublime text editor for the text editor steps. Here is the version information from my system from when I did these tests:
The version of the notebook server is 5.0.0 and is running on:
Kernel Info:
Python 3.6.1 |Anaconda custom (x86_64)| (default, May 11 2017, 13:04:09)
Type 'copyright', 'credits' or 'license' for more information
IPython 6.1.0 -- An enhanced Interactive Python. Type '?' for help.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With