Arnold Willemer
Python
Bibliografische Information der Deutschen Nationalbibliothek
Die Deutsche Nationalbibliothek verzeichnet diese Publikation in der Deutschen Nationalbibliografie;
detaillierte bibliografische Daten sind im Internet über http://dnb.d-nb.de abrufbar.
1. Auflage 2015
© 2015 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
Wiley, das Wiley-Logo und das Wrox-Logo sind Marken oder eingetragene Marken von John Wiley & Sons, Inc., USA, Deutschland und in anderen Ländern und dürfen nicht ohne schriftliche Genehmigung genutzt werden.
Das vorliegende Werk wurde sorgfältig erarbeitet. Dennoch übernehmen Autoren und Verlag für die Richtigkeit von Angaben, Hinweisen und Ratschlägen sowie eventuelle Druckfehler keine Haftung.
Wir möchten Sie mit diesem Buch optimal unterstützen und freuen uns daher über Ihre Anregungen und Verbesserungsvorschläge. Notwendige Korrekturen veroffentlichen wir im Interesse aller Leser umgehend unter www.wrox-press.de und berücksichtigen sie bei der nächsten Auflage. Herzlichen Dank für Ihre Unterstützung!
Ihr Wrox-Lektoratsteam [email protected]
Coverbild: © julien tromeur/fotolia.com
Umschlaggestaltung: bauer-design, Mannheim
Sprachkorrektur: Petra Heubach-Erdmann, Düsseldorf
Fachkorrektur: Frank Agerholm
Satz: inmedialo Digital- und Printmedien UG, Plankstadt
ePub ISBN: 978-3-527-69472-3
mobi ISBN: 978-3-527-69471-6
Print: ISBN: 978-3-527-76066-4
Vorwort
Viele wissen nicht, dass die Mitglieder der bekannten Komikergruppe Monty Python ursprünglich Programmierer waren, die seinerzeit in Maschinensprache und PL/I zauberhafte Programme dichteten. Aber sie klagten, dass die Programmiersprachen so ermüdend langatmig und umständlich seien. Man zeigte ihnen die seinerzeit gebräuchlichsten Sprachen Fortran und Cobol und das gab ihnen den Rest. Sie wollten nicht mehr Programmierer sein. Dann könnten sie ja gleich Komiker oder so etwas werden. Diese traurige Geschichte hörte Guido van Rossum und beschloss, eine Programmiersprache zu schaffen, die einfach und leistungsfähig war. Sie beherrschte die objektorientierte Programmierung und alle Techniken, die man als Programmierer heutzutage benötigt. Er nannte die Programmiersprache Python in Anlehnung an jene gescheiterten Programmierer. Und wer weiß? Vielleicht hätte mit Python sogar aus Mario Barth noch ein brauchbarer Programmierer werden können.
Es ist mir häufiger passiert, dass erfahrene Programmierer über Python erzählten, und sie bekamen dabei leuchtende Augen und erklärten, dass die Sprache unglaublich einfach sei und zu schnellen Ergebnissen käme. Ich hatte daraufhin ein paar kleinere Programme in Python geschrieben und akademisch korrekt die Unterschiede zu anderen Sprachen analysiert. Dann kamen wieder ganz andere Themen auf mich zu. Ich hörte zwischendurch, dass Python immer mehr Verbreitung fände und auch mehr und mehr Raum in den Linux-Distributionen einnahm. Insbesondere wurden wohl Teile des Desktops in Python realisiert. Ich schaute mir Python noch einmal an und spielte damit ein Weilchen herum und dann passierte es: Ich war infiziert. Und so kommt es vor, dass ich mich dabei erwische, wie ich mit leuchtenden Augen erzähle, wie toll Python ist.
Ich habe bereits Bücher über Java und C++ geschrieben und mir immer gedacht, dass es schade ist, dass es keine einfachen Programmiersprachen wie BASIC gibt, die in den 1980er Jahren eine große Verbreitung hatte. Nicht, dass ich mir BASIC zurückwünschte. Es war unstrukturiert, nicht standardisiert und kam schnell an seine Grenzen, sodass man nach kurzer Zeit eine andere Sprache lernen musste. Aber BASIC war einfach. Und damit war es der Einstieg für Leute, die programmieren wollten, ohne viel zu lernen, ohne sich mit ideologischen Konzepten zu befassen, bevor sie die ersten Zeilen eintippen. Warum wird Python nicht an den Schulen unterrichtet? Eine verpasste Chance!
Sie werden in diesem Buch zunächst lesen, was Programmieren eigentlich ist, was Sie an Programmen benötigen. Dabei werden Sie feststellen, dass alles kostenlos im Internet verfügbar ist, egal ob Sie Linux, Mac oder Windows verwenden.
Die Grundlagen wie Variablen, Abfragen, Schleifen und Funktionen werden einen gewissen Raum einnehmen, damit Sie sich sicher fühlen. Sie werden die Klassen und damit die objektorientierte Programmierung kennenlernen, die Python wie selbstverständlich beherrscht. Python ist ideal für die Verarbeitung von Listen und assoziativen Speichern. Sie werden lernen, wie einfach Python mit grafischen Oberflächen umgeht, und in die Computergrafik eintauchen. Die naturwissenschaftlichen Bibliotheken werden vorgestellt. Dann kommen wir zum dauerhaften Speichern von Daten in Dateien, Datenbanken oder XML. Sie werden sehen, wie man in Netzwerken und im Internet programmiert, um zuletzt auch die Parallelprogrammierung und das Zusammenspiel mit dem Betriebssystem kennenzulernen. Das hört sich gewaltig an. Aber es geht alles erstaunlich einfach, solange man Spaß am Programmieren hat.
Wenn Sie wie ich vorher schon andere Programmiersprachen kennen, müssen Sie sich von einigen Dogmen befreien und in die Denkweise von Python eintauchen. Das Hauptdogma lautet: »Wir sind alle erwachsen und wir brauchen uns nicht vor uns selbst zu beschützen«. Das widerspricht dem »Law and Order«-Konzept anderer Programmiersprachen, die alles sichern wollen. Wenn man sich auf diese Denkweise einlässt, werden Sie feststellen, dass manches Problem irrsinnig schnell lösbar ist.
Dieses Buch habe ich durchaus selbst geschrieben, aber bevor es bei Ihnen auf dem Schreibtisch landet, arbeiten viele, viele Köpfe daran mit.
Dieses Buch hat der Verlag Wiley durch drei Lektoren betreuen lassen. Verlagslektoren begleiten das Buch von der ersten Entstehung bis zu ihrer Fertigstellung und halten den Autor davon ab, mit dem Thema durchzubrennen und den Leser einsam zurückzulassen. Angefangen hatte Christine Siedle. Dann übernahm Sandra Bollenbacher. Und zuletzt musste sich Marcel Ferner mit mir herumschlagen.
Als Fachlektor konnte ich Frank Agerholm gewinnen. Er passt auf, dass ich keinen Unsinn über Python verbreite. Petra Heubach-Erdmann versucht, die deutsche Sprache vor meiner Schlamperei zu bewahren, und hilft mir bei Wortfindungsstörungen.
Ganz viele Helfer gibt es im Bereich des Layouts und des Drucks. Sie sorgen dafür, dass die Grafiken passen, dass die Anordnung der Seiten stimmt und das Buch wie ein Buch und nicht wie ein Referatsmanuskript aussieht.
Und dann gibt es noch die Leser meiner Bücher. Seit über fünfzehn Jahren melden sie mir meine Fehler und fragen nach. Das hat mir geholfen, beim Schreiben den Anfänger im Hinterkopf zu behalten. Ich hoffe, es ist mir auch diesmal gelungen.
Arnold Willemer Norgaardholz
Kapitel 1 Programmieren für Einsteiger
Hier sind Sie richtig, wenn Sie noch nie programmiert haben. Erst einmal haben Sie die richtige Sprache erwischt, aus meiner Sicht natürlich das richtige Buch und vor allem nun auch noch den richtigen Abschnitt.
Sollten Sie allerdings schon Programmiererfahrung haben, werden Sie sich hier vielleicht langweilen. Und bevor Sie noch einschlafen und mir den Abschnitt verschnarchen, blättern Sie lieber zum nächsten Abschnitt weiter.
Programmieren ist eine schöne Beschäftigung. Sie können herumkommandieren, ohne dass es Ihnen irgendjemand übel nimmt. Anstatt selbst zu arbeiten, überlassen Sie dies dem Computer. Sie tun Dinge, die andere Leute nicht können. Und Sie erschaffen kreativ eine virtuelle Welt.
Ein Programm besteht