Practice Python with colored grids in the IPython Notebook
OTHER License
ipythonblocks
.. image:: https://travis-ci.org/jiffyclub/ipythonblocks.png?branch=master :alt: Travis-CI :target: https://travis-ci.org/jiffyclub/ipythonblocks
.. image:: https://coveralls.io/repos/jiffyclub/ipythonblocks/badge.png :alt: Coveralls :target: https://coveralls.io/r/jiffyclub/ipythonblocks
.. image:: https://img.shields.io/pypi/v/ipythonblocks.svg :alt: PyPI :target: https://pypi.python.org/pypi/ipythonblocks
ipythonblocks
is a teaching tool for use with the IPython_ Notebook.
It provides a BlockGrid
object whose representation is an HTML table.
Individual table cells are represented by Block
objects that have .red
,
.green
, and .blue
attributes by which the color of that cell can be
specified.
ipythonblocks
allows students to experiment with Python flow control concepts
and immediately see the effects of their code represented in a colorful,
attractive way. BlockGrid
objects can be indexed and sliced like 2D NumPy
arrays making them good practice for learning how to access arrays.
See these demo notebooks for more on using ipythonblocks
:
Practicing with RGB
_Basic usage
_ with explanationsFun examples
_Animation
_ImageGrid
_JPEG to BlockGrid
_ and textfirework animation
_Using ipythonblocks.org
_ipythonblocks
can be installed with pip
::
pip install ipythonblocks
However, the package is contained in a single .py
file and if you prefer
you can just grab ipythonblocks.py
_ and copy it to wherever you
want to use it (useful for packaging with other teaching materials).
Required dependencies:
Optional dependencies:
ipythonblocks.org
_)Testing dependencies:
Demo dependencies:
starry_night_to_text.ipynb
)The test suite is written using pytest_, so you can run the test suite with::
py.test
.. _IPython: http://ipython.org .. _Practicing with RGB: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/learning_colors.ipynb .. _Basic usage: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/ipythonblocks_demo.ipynb .. _Fun examples: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/ipythonblocks_fun.ipynb .. _Animation: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/ipythonblocks_animation.ipynb .. _ImageGrid: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/ipythonblocks_imagegrid.ipynb .. _JPEG to BlockGrid: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/starry_night_to_text.ipynb .. _firework animation: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/Firework.ipynb .. _Using ipythonblocks.org: http://nbviewer.ipython.org/urls/raw.github.com/jiffyclub/ipythonblocks/master/demos/ipythonblocks_org_demo.ipynb .. _ipythonblocks.py: https://github.com/jiffyclub/ipythonblocks/blob/master/ipythonblocks/ipythonblocks.py .. _Python: http://python.org/ .. _pytest: http://pytest.org/ .. _requests: http://docs.python-requests.org/en/latest/ .. _PIL: http://www.pythonware.com/products/pil/ .. _Pillow: https://python-pillow.org/ .. _responses: https://github.com/dropbox/responses .. _mock: http://www.voidspace.org.uk/python/mock/ .. _ipythonblocks.org: http://www.ipythonblocks.org