py2nb: | convert python scripts to jupyter notebooks |
---|---|
Author: | Will Handley |
Version: | 1.0.0 |
Homepage: | https://github.com/williamjameshandley/py2nb |
py2nb
is a python package for converting python scripts with minimal
markdown to jupyter notebooks.
Markdown cells are rendered from comments beginning with #|
, splits between
code cells are created by comment lines beginning with #-
nb2py
converts from jupyter notebooks to python
Users can install using pip:
pip install py2nb
from source:
git clone https://github.com/williamjameshandley/py2nb
cd py2nb
python setup.py install
or for those on Arch linux it is available on the AUR
If one has a script named example.py
containing the code:
#| # Testing ipython notebook
#| This is designed to demonstrate a simple script that converts a script into
#| a jupyter notebook with a simple additional markdown format.
#|
#| Code by default will be put into code cells
#|
#| * To make a markdown cell, prefix the comment line with with '#|' or '# |'
#| * To split a code cell, add a line beginning with '#-' or '# -'
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
#| Here is a markdown cell.
#| Maths is also possible: $A=B$
#|
#| There are code cells below, split by `'#-'`:
# | Here is another markdown cell
x = np.random.rand(5)
#-------------------------------
y = np.random.rand(4)
z = np.random.rand(3)
#| Here are some plots
x = np.linspace(-2,2,1000)
y = x**3
fig, ax = plt.subplots()
ax.plot(x,y)
# -------------------------------
# | Here is another plot
x = np.linspace(-np.pi, np.pi, 201)
fig, ax = plt.subplots()
ax.plot(x,np.sin(x))
then running
py2nb example.py
produces the notebook example.ipynb
- evaluation option for script produced
- vim syntax highlighting for markdown code blocks