Sometimes even good programmers at their first tries of Python use less than optimal solutions and language constructs. In the years Python has accumulated few redundancies and few warts (and some of them will be removed with Python 3.0), but it's a generally clean language still, so with a page like this you can avoid the most common ones. This page hopes to be really simple and short enough, you can find explanations online elsewhere.
david ascher, alex martelli, anna ravenscroft.
about the class dispatcher, among others
still valid, except that the dispatcher algorithm was replaced by C3 in Python 2.3
major revision of "how to think like a computer scientist: learning with python". allen b. downey.