Verschiedene Ansätze, dasselbe Ziel: Beide vorgestellten Bücher wollen Um- und Einsteiger dabei unterstützen, die populäre Sprache Python zu erlernen.
Python von A bis Z
Bernd Klein geht in seiner Einführung “Python 3” sehr gründlich und systematisch vor. Nach einer kurzen Einführung stellt ein Kapitel die grundlegenden sprachlichen Mittel von Python vor: Datentypen, Verzweigungen und Schleifen, Funktionen und dergleichen. Der Autor betrachtet dabei vorrangig das prozedurale Paradigma und geht ausgiebig auf die Modularisierung und damit verbundene Probleme wie Wertebereiche von Variablen oder Namensräume von Modulen ein. Daneben bespricht er überall verwendete Techniken wie das Lesen und Schreiben in und aus Dateien, die formatierte Ausgabe und die Ausnahmebehandlung.
Ein dritter Buchteil wendet sich dann speziell der objektorientierten Programmierung mit Python zu und behandelt Klassen und Instanzen, Attribute und Methoden, Vererbung und Mehrfachvererbung bis hin zu abstrakten Klassen und Metaklassen. Das alles wird durchweg verständlich und anhand vieler Beispiele erklärt. Vorkenntnisse benötigt der Leser nicht unbedingt, sie können aber auch nicht schaden.
Ein viertes Kapitel geht dann auf die mathematisch begründete funktionale Programmierung ein, die mit Python ebenfalls möglich ist, wenngleich dessen Schöpfer Guido van Rossum kein Freund dieses Paradigmas war und die dazugehörigen Sprachmittel eigentlich wieder entfernen wollte. Dazu kam es nicht, und deshalb geht es hier um Lambda-Funktionen, um »map«, »filter« und »reduce« beziehungsweise als Alternative dazu um List Comprehension sowie Generatoren und Iteratoren. Auch die Python-spezifische Modifikation einer Klasse oder Funktion durch Dekorateure kommt an dieser Stelle zur Sprache.
Teil fünf schließlich widmet sich weiterführenden Themen wie dem Testen, der persistenten Speicherung, regulären Ausdrücken, den relativ neuen Type Annotations und der Systemprogrammierung. Alles in allem liegt mit “Python 3” ein durchweg empfehlenswertes Lehrbuch vor, das sich auch als Referenz eignet und in alle Aspekte der Sprache umfassend einführt. Zum Selbststudium dürfte sich das Werk ebenfalls gut eignen, nicht zuletzt wegen der Aufgaben an den Abschnittsenden, für die ein Schlusskapitel Lösungen anbietet.
In Python denken
Vollkommen anders kann auch der Informatikprofessor Allen B. Downey in seinem Buch “Think Python” nicht an den Stoff herangehen: Die Logik der Sprache erzwingt eben eine bestimmte Systematik in der Vorstellung der aufeinander aufbauenden Sprachelemente. Trotzdem unterscheidet sich sein Ansatz, der aus einer Einführung in die Programmierung am College entwickelt wurde, merklich von dem des ersten Buchs. Unzufrieden mit der hohen Durchfallerquote seiner Studenten, wollte der Autor einen Kurs konzipieren, der kompakter und kürzer ausfallen, ohne Fachjargon auskommen und in kleinen Schritten vorangehen sollte.
Das Buch ist nur halb so dick wie das zuerst besprochene. Man muss also wesentlich weniger lesen, erfährt aber auch nicht von allen Feinheiten der Sprache. Andererseits versucht der Autor, über das reine Lehren von Python hinauszugehen und in die Denkweise eines Programmierers einzuführen. Dafür enthält jedes Kapitel neben Übungen und einem Glossar einen Abschnitt “Debugging”, der auf Stolperstellen aufmerksam macht und Möglichkeiten der Fehlersuche aufzeigt. Sogar die Herangehensweise bei der planvollen Entwicklung größerer Programme kommt zur Sprache.
Dieses Python-Lehrbuch spart ebenfalls nicht an instruktiven Beispielen. Längere Listings werden nicht abgedruckt, lassen sich aber herunterladen. Auch die Lösungen zu den Übungen gibt es online. Die Erläuterungen fallen durchweg gut verständlich aus. Das Buch eignet sich zwar nicht ideal als Referenz zum Nachschlagen, aber als Hilfe für das Erlernen von Python (auch im Selbststudium) erfüllt es seinen Zweck voll und ganz.






