Related to this Stack Overflow question (C state-machine design), could you Stack Overflow folks share your Python state-machine design techniques
There is this design pattern for using decorators to implement state machines. From the description on the page:
Decorators are used to specify which methods are the event handlers for the class.
There is example code on the page as well (it is quite long so I won't paste it here).