Kleiner Tipp für alle, die Algorithmen in Python debuggen möchten: der Pythontutor visualisiert wunderschön, wie eingegebene Algorithmen durchlaufen werden - Schritt für Schritt.
Einfach hier den Sourcecode eingeben, "Visualize Execution" anwählen und schrittweise anschauen, wie dieser bis zum Ergebnis durchlaufen wird.
Besonders gut eignet sich aus meiner Sicht das Tool, wenn man komplexe Algorithmen mit z.B. Rekursion analysieren will. Zum Beispiel eine mögliche Implementierung für die Fibonacci-Zahlen.
Der Sourcecode ist auf GitHub verfügbar.