Skip to main content

ipython-cells

This is an IPython extension for those who prefer to work in a terminal but still need the cell-by-cell execution provided by a Jupyter notebook.

Example Jupyter notebook:

Running exported notebook with ipython-cells:

Quickstart

Install the extension:

pip install ipython-cells

Convert an existing notebook to a Python file (In Jupyter):

Cell > Run All
File > Download As > python (.py)

Execute cells in iPython:

>>> %load_ext ipython_cells
>>> %load_file my_notebook.py
>>> %cell_run 1
>>> %cell_run 2
array([1.+0.j, 1.+0.j, 1.+0.j, 1.+0.j, 1.+0.j, 1.+0.j, 1.+0.j, 1.+0.j])

You can freely add/delete/rename cells in the downloaded my_notebook.py. my_notebook.py is automatically reloaded when changes are made.

Alternatively, you can create a new .py file from scratch without starting from a Jupyter notebook. See the cell delimiter syntax.

Other Features

Spyder cell delimiter syntax is also supported:

# %% cell1
print('hello')

# %% cell2
print('world')

Other commands:

# cell ranges - run all cells from beginning of file to cell2 (inclusive)
>>> %cell_run ^cell2
hello
world

# cell ranges - run all cells from cell1 (inclusive) to end of file
>>> %cell_run cell1$
hello
world

# list available cells for running
>>> %list_cells
['__first', 'cell1', 'cell2']

Automatically Load Extension

To load extension on IPython start, add this to ~/.ipython/profile_default/ipython_config.py

c.InteractiveShellApp.extensions = [
    'ipython_cells'
]

Autoreloading

# load example.py with autoreloading
%load_file example.py

%cell_run cell1
10
# example.py is modified by an external editor (e.g. `a = 10`  ->  `a = 20`)
# File change is detected and automatically reloaded
%cell_run cell1
20

Auto reloading can be disabled with %load_file example.py --noreload

Cell Delimiter Syntax

Cells are delimited by special comments. Both Jupyter and Spyder style cells are supported. Below are different variations of a cell called foobar_cell.

  • # %% foobar_cell
  • # In[foobar_cell]
  • # %% foobar_cell some extra text
  • # In[foobar_cell] some extra text

Running Exported Jupyter Notebooks

This extension can run exported Jupyter notebooks. (File > Download As > python (.py)).

Be sure to run all cells before exporting so they are assigned an index. (Cell > Run All).

Tests

cd tests
ipython3 tests.py

Metadata

Release files for ipython-cells 5.2.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ipython-cells 5.2.2
File Size Uploaded
ipython_cells-5.2.2.tar.gz 45.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ipython-cells 5.2.2
File Interpreter ABI Platform
ipython_cells-5.2.2-py3-none-any.whl Python 3 none any Details

Total release size: 51.6 kB

Release files / ipython_cells-5.2.2.tar.gz

Download URL ipython_cells-5.2.2.tar.gz
Size 45.9 kB
Tags Source
SHA-256 checksum
How to use checksums
c430d3177a594cef730e88366435e3be4f800c31ca2f173fe6234d4c6b23cf46
BLAKE2b-256 checksum
How to use checksums
8664d747a23056f779195f901c63b8a108a354af77dca1187fb8a7cd91625795
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.8

Release files / ipython_cells-5.2.2-py3-none-any.whl

Download URL ipython_cells-5.2.2-py3-none-any.whl
Size 5.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2f5fe6eafe4f4190807d11da06b7a44c16742664c4fc8352b9fbf609a2ba0453
BLAKE2b-256 checksum
How to use checksums
a2a07ee7894e53aa4222762cfa5181ea758e085b5f47d1293247dff3683d371f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.11.8

Release history Release notifications | RSS feed

This release

5.2.2 This release

2 release files

5.2.0

1 release file

5.1

2 release files

5

2 release files

4

2 release files

2

2 release files

1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page