Reviewed-on: #4
Code sieht soqweit solide aus. Kleine Anmerkung zu den Kommentaren: Wenn Du die anstelle mit # oberhalb der Funktion mit """ innerhalb der Funktion schreibst, kannst Du die für automatische Dokumentierungen (z.B. sphinx) und für help() nutzen und das ganz ohne Zusatzaufwand.
Reviewed-on: #3
Sehr schön! Wen man wollte, könnte man encode und decode noch vereinfachen, weil sehr viel Code praktisch identisch ist. Sie unterscheiden sich ja fast nur durch ein - und ein +. Die Wartung des Codes würde durch das vereinfacht. Ist aber gut gelöst so!