nested-states
A lightweight, object-oriented finite state machine implementation in Python with many extensions
state machine for python classes
Smax (pronounced "Smash") is a state machine DSL that generates python code.