dynpy is a package for defining and running dynamical systems in Python. The goal is to support a wide-variety of dynamical systems, both continuous and discrete time as well as continuous and discrete state.
So far, it has basic support for linear dynamical systems, Markov chains, Boolean Networks, and Cellular Autamata.
It supports both Python2 and Python3.
For documentation, see http://dynpy.readthedocs.org/ . The tutorial, at http://dynpy.readthedocs.org/tutorial.html , may be particularly helpful.
dynpy requires numpy, scipy, and six.
Testing requires pytest.
Building the documentation requires matplotlib.