Nicholas, Have you looked at Octave? It is not Python, but I believe it can talk to Python. Octave is comparable to Matlab for many things, including having ODE solvers. I have successfully used it to model and simulate simple systems. Complex system would be easy to model as well, provided that you model your dynamic elements with (systems of) differential equations.
-- http://mail.python.org/mailman/listinfo/python-list