Cell mode in Python editors

Spyder3 defines a cell as all code between lines starting with #%%.

Run a cell with Ctrl+Enter, or run a cell and advance with Shift+Enter.


The Interactive Editor for Python IEP has a Matlab-style cell notation to mark code sections (by starting a line with '##'), and the shortcut by default is also Ctrl+Enter:

## Cell one
"""
A cell is everything between two commands starting with '##'
"""
a = 3
b = 4
print('The answer is ' + str(a+b))

## Cell two

print('Hello World')

I have written a vim plugin in which cells are delimited by ## . It sends cells to an ipython interpreter running in tmux. You can define key mappings to execute the current cell, execute current cell and move to next or execute the current line :

https://github.com/julienr/vim-cellmode

I recently started working on a similar plugin for Intellij PyCharm. It can send the cell to either the internal python console (which has some issues with plots) or to an ipython interpreter running in tmux :

https://github.com/julienr/pycharm-cellmode


Spyder3 & PyCharm: #%% or # %%

Spyder3: Ctrl+Enter: to run current cell, Shift+Enter: to run current cell and advance.

PyCharm: Ctrl+Enter: to run and advance

# %%

print('You are in cell 1')

# %%

print('You are in cell 2')
# %% 

print('You are in cell 3')

enter image description here

Tags:

Python

Ide

Matlab