Skip to main content

Jupyter-like cell running in ipython

Project description

ipython-cells

IPython extension for executing cells Jupyter-style in .py files. Supports Jupyter and Spyder cell syntax.

Brings the advantages of linear, selective-execution during development to IPython without the bloat of Jupyter.

Example

We can execute the invidual cells in a .py file just like a Jupyter notebook.

example.py

# %% cell1
a = 10
print(a)

# %% cell2
a += 1
print(a)

In IPython:

# load the extension and a .py file
%load_ext ipython_cells
%load_file example.py

# run some cells
%cell_run cell1
10
%cell_run cell2
11

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

Installation

pip install ipython-cells

Optionally, automatically load ipython-cells when IPython starts

~/.ipython/profile_default/ipython_config.py

c.InteractiveShellApp.extensions = [
    'ipython_cells'
]

Execute a range of cells

%load_file example.py

# run all cells from beginning of file to cell2 (inclusive)
%cell_run ^cell2
10
11

# run all cells from cell1 (inclusive) to end of file
%cell_run cell1$
12
13

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.

Examples

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

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ipython_cells-5.tar.gz (3.4 kB view details)

Uploaded Source

Built Distribution

ipython_cells-5-py3-none-any.whl (3.9 kB view details)

Uploaded Python 3

File details

Details for the file ipython_cells-5.tar.gz.

File metadata

  • Download URL: ipython_cells-5.tar.gz
  • Upload date:
  • Size: 3.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.9

File hashes

Hashes for ipython_cells-5.tar.gz
Algorithm Hash digest
SHA256 892c63d6dbf348b5ed0f4fe792cfc82595c942373a912c94cfe4dd98b455c85b
MD5 6c50995c5a1744d60d9714aac85c528d
BLAKE2b-256 8455f8bbfe53d0789a33e8a84bbfb8dfaace792bb067b6880b549e196607ca56

See more details on using hashes here.

File details

Details for the file ipython_cells-5-py3-none-any.whl.

File metadata

  • Download URL: ipython_cells-5-py3-none-any.whl
  • Upload date:
  • Size: 3.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.12.1 pkginfo/1.4.2 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.6.9

File hashes

Hashes for ipython_cells-5-py3-none-any.whl
Algorithm Hash digest
SHA256 aa43d41f5c390c43e244c47a9761419f3c3a2fb1d4a833c98e37de7c243beab4
MD5 ac74fd042410b6154c91603b72e8acc3
BLAKE2b-256 eb234006140b1ee818ae4583a6fdf367c4f02c740674c37fe7f391b583c4dcb9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page