17,99 €
Python ist eine der beliebtesten und vielseitigsten Programmiersprachen überhaupt. Für viele Entwickler führt deshalb kein Weg an Python vorbei. Schöpfen Sie mit diesem Buch aus dem reichen Erfahrungsschatz zweier langjähriger Softwareentwickler. Sie lernen zunächst die Syntax der Sprache und vertiefen dann das Erlernte anhand von konkreten Aufgabenstellungen. Für den Blick über den Tellerrand sorgen Kapitel zu Programmierparadigmen, Code-Qualität, Test-Ansätzen und Dokumentation. Jede Menge Tipps und Tricks und ein breites Spektrum an Beispielen lassen Sie zu einem wahren Python-Profi werden.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 416
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.
© 2020 WILEY-VCH Verlag GmbH & Co. KGaA, Weinheim
Wiley, the Wiley logo, Für Dummies, the Dummies Man logo, and related trademarks and trade dress are trademarks or registered trademarks of John Wiley & Sons, Inc. and/or its affiliates, in the United States and other countries. Used by permission.
Wiley, die Bezeichnung »Für Dummies«, das Dummies-Mann-Logo und darauf bezogene Gestaltungen sind Marken oder eingetragene Marken von John Wiley & Sons, Inc., USA, Deutschland und in anderen Ländern.
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.
Print ISBN: 978-3-527-71414-8
ePub ISBN: 978-3-527-81116-8
Coverfoto: © chris – stock.adobe.com
Korrektur: Matthias Delbrück, Dossenheim/Bergstraße
Cover
Über die Autoren
Über Johannes
Über Horst
Johannes' Widmung
Horsts Widmung
Danksagung
Einleitung
Törichte Annahmen über den Leser
Wie Sie dieses Buch nutzen können
Was Sie nicht lesen müssen
Wie dieses Buch aufgebaut ist
Symbole, die in diesem Buch verwendet werden
Konventionen in diesem Buch
Teil I: Langweilige Einmallektüre
Kapitel 1: Orientierung
Motivation
Anwendungsgebiete
Kapitel 2: Im Kriechgang – die Installation
Windows
macOS
Linux
Einer für alle ...
Kapitel 3: Der Schlange Beine machen – Python ausführen
Der REPL
Editor oder IDE?
Teil II: Python sprechen lernen
Kapitel 4: Hic forum est – Schnellkurs
Vogelperspektive
Das kleinste Python-Programm der Welt
Zeichenketten und Bildschirmausgabe
Rechnen mit Python
Variablen
Wahrheitswerte und bedingte Ausführung
Listen und Schleifen
Funktionen und Module
Fehlerbehandlung
Kapitel 5: Daten strukturieren
Listen
Tupel
Dictionarys
Sets
Kapitel 6: Daten transformieren
Iteration
Comprehensions
Slicing
Iteration ohne Index
FAQ – Leben ohne Index
Kapitel 7: Mit der Außenwelt kommunizieren
Selbstgespräche führen
Kommandozeilenparameter
Textdateien einlesen
Textdateien schreiben
Alles fließt
Bin\xc3\xa4rdaten lesen
Binärdaten schreiben
Teil III: Mit Python Probleme lösen
Kapitel 8: Was Python schon kann
Built-ins
Module und Pakete
Die Standardbibliothek
Minisprachen
Kapitel 9: Was Python (noch) nicht kann
Pip installieren
Pakete installieren
Installierte Pakete ansehen
Spezifische Versionen installieren
Pakete entfernen
Kapitel 10: Was Sie Python beibringen können
Eigene Module
Eigene Pakete
Eigene Skripte
Hintergrund: Wie Module geladen werden
Teil IV: Python als Handwerk
Kapitel 11: Funktionale Programmierung
Anatomie einer Funktion
Argumente entpacken
Funktionen haben »Bürgerrechte«
Dekoratoren
Generatoren
Kapitel 12: Objektorientierte Programmierung
Anatomie eines Objekts
Beziehungen
In Objekten denken
Kapitel 13: Ausnahmen
Ausnahmen behandeln
Eigene Ausnahmen auslösen
Ausnahmen als Signale nutzen
Beispiel: Hotels buchen
Kapitel 14: Testen
Wenn Ihr Programm nicht tut, was es soll
Python bei der Arbeit zuschauen
Unit-Tests schreiben mit dem unittest-Modul
Teil 5: Brötchen (oder Lorbeeren) mit Python verdienen
Kapitel 15: Code-Qualität
Werkzeuge
Integrierte Code-Audits
Chancen und Grenzen
Kapitel 16: Webanwendungen entwickeln
Python und das Web
Django
Zusammenfassung
Kapitel 17: Daten aufbereiten, visualisieren und auswerten
Setup
Szenario: Minigolf
Datensatz
Schritt 0 – Fragen
Schritt 1 – Daten einlesen
Schritt 2 – Data Frames untersuchen
Schritt 3 – Series-Objekte betrachten
Schritt 4 – Beschreibende Statistiken ausgeben
Schritt 5 – Filtern und Bereinigen
Schritt 6 – Auswerten
Schritt 7 – Visualisieren
Schritt 8 – Schließende Statistik
Zusammenfassung
Teil IV: Der Top-Ten-Teil
Kapitel 18: Zehn gute Bibliotheken
Die Standardbibliothek
Requests
BeautifulSoup
Scrapy
Selenium
Cryptography
Pypdftk
Flask
OpenCV
NLTK
Kapitel 19: Zehn Dinge, die wir ausgelassen haben
Python 2.7
Interoperabilität mit C
Python Bytecode disassemblieren
Debugging
Logging
GUIs
Nebenläufige Ausführung
Typ-Annotationen
Dataclasses
Walross-Operator
Stichwortverzeichnis
End User License Agreement
Kapitel 4
Tabelle 4.1 Operator-Präzedenz
Tabelle 4.2 Wichtige Zuweisungen
Tabelle 4.3 Boolesches
and
/Boolesches
or
Tabelle 4.4 Boolesches
not
Kapitel 7
Tabelle 7.1 Gebräuchliche Steuerzeichen
Tabelle 7.2 Dateimodi
Tabelle 7.3 Kombinationen verschiedener Modi
Kapitel 8
Tabelle 8.1 Built-ins für den REPL
Tabelle 8.2 Built-ins zur Erzeugung von Containern
Tabelle 8.3 Built-ins zur Änderung von Zahlentypen
Tabelle 8.4 Built-ins zur Erzeugung von Ganzzahl-Darstellungen
Tabelle 8.5 Built-ins zur Erzeugung von Zeichen und Zeichenketten
Tabelle 8.6 Mathe-Built-ins
Tabelle 8.7 Built-ins zur Aggregation
Tabelle 8.8 Built-ins für die Datentransformation
Tabelle 8.9 Datumsformate
Tabelle 8.10 Zeitformate
Tabelle 8.11 Locale-Shortcuts
Tabelle 8.12 Zeitzonen
Kapitel 12
Tabelle 12.1 Mathematische Operatoren für Brüche
Kapitel 17
Tabelle 17.1 Punkte
Tabelle 17.2 Personen
Kapitel 19
Tabelle 19.1 Beliebte GUI-Frameworks
Kapitel 2
Abbildung 2.1 Alle Downloads finden Sie auf der offiziellen Seite
Abbildung 2.2 Laden Sie die 64bit Version herunter
Abbildung 2.3 Wählen Sie
CUSTOMIZE INSTALLATION
Abbildung 2.4 Auswahl der Features – Wählen Sie auch hier alle Häkchen aus!
Abbildung 2.5 Erweiterte Optionen – Wählen Sie alle Häkchen aus!
Abbildung 2.6 Gehen Sie mit dem Hund raus!
Abbildung 2.7 Laden Sie den Installer herunter!
Abbildung 2.8 Willkommen!
Abbildung 2.9 Anpassen!
Abbildung 2.10 Wählen Sie alle Pakete aus!
Abbildung 2.11 Fertig!
Kapitel 5
Abbildung 5.1 Mengenoperationen
Kapitel 6
Abbildung 6.1 Syntax für Comprehensions
Kapitel 7
Abbildung 7.1 Aufbau einer PNG-Datei
Kapitel 8
Abbildung 8.1 Unicode-fähige Terminals geben sogar Icons aus
Kapitel 11
Abbildung 11.1 Syntax für Funktionsparameter
Kapitel 13
Abbildung 13.1 Der Ablauf einer Hotelbuchung
Kapitel 16
Abbildung 16.1 Wie Django HTTP-Anfragen verarbeitet
Abbildung 16.2 Wenn Sie diese Rakete sehen, dann hat es geklappt!
Abbildung 16.3 Der Eingang zur Django-Verwaltung
Abbildung 16.4 Die Django-Verwaltung
Abbildung 16.5 Eine Eingabemaske für Ihr Modell
Abbildung 16.6 Die Personenliste
Abbildung 16.7 Ihre eigene Namensliste
Kapitel 17
Abbildung 17.1 Die Verteilung der Punkte nach Geschlecht aufgeschlüsselt
Cover
Inhaltsverzeichnis
Fangen Sie an zu lesen
1
2
3
4
5
9
10
11
12
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
49
50
51
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
375
376
377
378
379
380
381
383
384
385
386
387
388
389
390
393
394
395
396
397
398
Johannes C. Hofmeister lebt in Heidelberg. Am Psychologischen Institut der Universität Heidelberg arbeitet er als Administrator und erforscht nebenher, was Code verständlich macht. Als Softwareentwickler und Berater hat er in großen und kleinen Unternehmen C#, Java und JavaScript eingesetzt, aber am liebsten liest und schreibt er Python-Code.
Horst Schneider lebt in Mannheim und arbeitet seit mehr als zehn Jahren als Softwareentwickler. Sein Schwerpunkt ist die Anwendungsentwicklung in verschiedenen Sprachen, von Java über C# bis zu JavaScript und Python. Aktuell arbeitet er als Coach und Berater im Raum Heidelberg und löst vielfältige Probleme – vorzugsweise mit Python.
Für Katha.
Ich möchte dieses Buch Sabine und Rosa widmen. Danke für eure Unterstützung und die viele Geduld, die ihr mit mir hattet.
Eine frühe Fassung dieses Buches enthielt eine fiktive Anekdote darüber, wie der Mathematiker Alonzo Church Familie, Freunde und körperliche Hygiene vernachlässigte, um an seinen Theorien zum Lambda-Kalkül zu arbeiten. Inzwischen ist uns klar, dass wir wohl unsere eigene Situation auf Church projiziert haben. Wir bedanken uns daher bei allen, die uns in der Zeit unterstützt oder zumindest wohlwollend ertragen und uns den Rücken freigehalten haben.
Ganz besonderer Dank gilt Lars Kumbier für Raum, Zeit und aufmerksame Korrekturen. Kim Almasan wollen wir für die Installationsschritte auf dem Mac danken, die wir uns mangels Equipments sonst hätten ausdenken müssen. Dank gilt unserem enthusiastischen Erstleser Volker Lueg, dessen Anmerkungen unseren Code verbessert und uns sehr motiviert haben. Vielen Dank an Marion Lammarsch fürs Quietscheentchen-Debugging.
Ohne unseren Fachkorrektor Thomas Smits wäre das Buch wesentlich schlechter und wir ein wenig dümmer. Danke.
Python ist die beste Programmiersprache. Das behaupten wir nicht einfach so, sondern wir (sowohl Horst als auch Johannes) mussten erst viele gute und schlechte Erfahrungen mit anderen Sprachen sammeln, um zu so einer pauschalen Aussage zu kommen. In der Schule gab es Turbopascal und PHP. In der Uni gab's obendrein C, C++ und Java, im Job kam C# hinzu. Später nahmen wir JavaScript ins Portfolio auf.
Wie viel Spaß Programmieren machen kann, wissen wir aber erst, seit wir Python benutzen. Python ist unbürokratisch, dynamisch, schnell, intelligent und elegant. Python hat etwas Magisches an sich. Mit diesem Buch wollen wir Ihnen etwas von dieser Magie abgeben. Vielleicht können wir Sie ein bisschen verzaubern!
Wenn Sie das Buch gut finden, sagen Sie es anderen. Wenn Sie es blöd finden, sagen Sie es uns – dann verbessern wir es!
Viel Spaß beim Lesen!
Dieses Buch richtet sich an Programmierer, die schon Erfahrungen in anderen Sprachen wie C, Java oder JavaScript sammeln konnten, sowie an ambitionierte Neulinge.
Wir werfen immer mal wieder Infos ein, die auf grundlegendem, technischem Hintergrundwissen aufbauen – das könnte blutige Programmieranfänger überfordern. Aber vielleicht trauen Sie sich trotzdem. Wir versuchen natürlich, alles zu erklären.
Die folgenden Dinge sollten Sie mitbringen:
Einen Computer mit Windows, Linux oder macOS
Deutsch- und Englischkenntnisse
Idealerweise Erfahrung im Umgang mit der Kommandozeile
Dies ist ein Buch zum Mitmachen. Sie finden viele Code-Schnipsel, die Sie gerne abtippen können – dabei lernt man sehr viel, vor allem am Anfang. Wenn Sie keine Lust haben, alles von Hand abzutippen, finden Sie alle Code-Beispiele zum Herunterladen auf der Webseite des Buches unter www.wiley-vch.de/ISBN9783527714148.
Sie dürfen auch gerne ins Buch reinkritzeln und Eselsohren hineinmachen, denn so ein Buch ist ein Gebrauchsgegenstand.
Lesen Sie nicht einfach von vorne nach hinten, sondern der Nase nach. Lesen Sie, was Sie gerade interessiert und schmökern Sie hin und her. Außerdem sollten Sie etwas Humor mitbringen. Wir hatten viel Spaß beim Schreiben und hoffen, dass Sie ebenso viel Spaß beim Lesen haben.
Das Buch ist in folgende Teile unterteilt:
Irgendwo muss man anfangen. In diesem Teil helfen wir Ihnen bei der Installation und erklären noch ein bisschen, wie Sie die Code-Beispiele im Buch zum Laufen bringen. Diese Vorbereitungen sind notwendig, damit Sie den Beispielen im Buch folgen können.
Weil wir davon ausgehen, dass Sie schon ein bisschen programmieren können, zeigen wir direkt einen wilden Ritt durch die wichtigsten Sprachfeatures, sodass Sie diese mit Ihren eigenen Erfahrungen abgleichen können. Danach lernen Sie noch einige grundlegende Details sowie coole Syntax-Features, die Sie so sicher noch nicht kennen. Am Ende dieses Teils können Sie Programme erstellen, die Dateien lesen und schreiben.
Eine Programmiersprache allein macht noch kein Programm – man braucht noch eine Problemstellung. Viele Probleme sind in Python bereits gelöst, denn Python bringt Myriaden an kleinen Funktionen, praktischen Modulen, interessanten Paketen und sogar eigenständigen Programmen mit, die Sie direkt nach der Installation einsetzen können. Bevor Sie also anfangen, kleinschrittig viel Code zu schreiben, sollten Sie sich ansehen, was es in Python schon so alles gibt. So ersparen Sie sich viel Kleinarbeit wie die Neuerfindung des Rades und des plattgefahrenen Reifens.
Die kleinen Probleme sind in Python schon gelöst, daher können Sie sich ganz auf Ihre eigene Problemstellung konzentrieren. Um einem Computer beizubringen, wie man sich die Welt denn nun vorstellt, muss man seine Worte aber vorsichtig wählen. Wie Sie sich gut ausdrücken, zeigen wir in diesem Buchteil. Hier geht es um Funktionen, Objekte und Ausnahmen, die Ihnen sicher aus anderen Sprachen geläufig sind. Danach haben Sie das Wichtigste gesehen und sollten keine Überraschungen mehr erleben, wenn Sie anderer Leute Python-Code lesen.
Programmieren bereitet Freude, weil es so effektvoll ist. Man tippt wirre Zeichen und der Computer rattert und gibt irgendetwas aus – das macht einen Höllenspaß. Leider genießen nur wenige den Luxus, aus Spaß an der Freude vor sich hin zu programmieren. Daher zeigt dieser Buchteil einige Problemstellungen, die Sie so oder so ähnlich auch in der Praxis erleben könnten.
Im Top-Ten-Teil wird eine Auswahl interessanter Bibliotheken präsentiert. Zusätzlich finden Sie Themen, die im Buch nicht besprochen werden konnten, aber Ihnen einen Einstieg bieten, falls Sie sich in Zukunft noch tiefer mit Python befassen wollen.
Im Buch verteilt finden Sie verschiedene Symbole:
Mit der Glühbirne werden praktische Tipps für den Alltag hervorgehoben.
Der Techniker liefert Hintergrund-Infos, Fakten oder interessante Details und taucht immer dann auf, wenn Erbsen gezählt werden müssen.
Der Finger mit dem Faden zeigt an, dass Sie sich etwas gut merken sollten oder dass etwas Wichtiges wiederholt wird.
Dieses Symbol zeigt, dass hier etwas schiefgehen könnte. Meistens heißt das, dass wir Autoren diesen Fehler schon mindestens 300-mal gemacht haben. Daher sollten Sie sich aus Solidarität die Zeit nehmen, ihn auch zu machen.
Hier plaudern wir aus dem persönlichen Nähkästchen und erzählen einen Schwank aus dem Entwickleralltag.
Wir benutzen in diesem Buch die folgenden typografischen Konventionen.
Python-Code ist so formatiert:
Wir wollen uns nicht auf ein Betriebssystem festlegen, daher machen wir viel mit der Kommandozeile. Egal ob Linux, macOS und Windows – eine Kommandozeile gibt es immer frei Haus. Wir ermutigen Sie, sich mit ihr anzufreunden, denn sie ermöglicht einen direkten Draht zu Ihrem Betriebssystem.
Immer wenn einem Befehl ein Dollar ($) voransteht, meinen wir ganz allgemein, dass Sie diesen Befehl auf einer Kommandozeile eingeben sollen.
Wir unterscheiden dabei nicht zwischen den einzelnen Betriebssystemen und gehen davon aus, dass alle Befehle auf den gängigen Kommandozeilen funktionieren – auch wenn Eingabeaufforderung und Bildschirmausgabe subtil abweichen können.
Neue Konzepte heben wir hervor.
Wenn wir Code erklären, dann formatieren wir diesen auch im Fließtext so, dass Sie die Variablen wiedererkennen. Weiter oben im Code war zum Beispiel von print die Rede.
Variablen, die Sie im Fließtext finden, werden durch eine nichtproportionale Schriftart hervorgehoben, etwa so:
variable
Diese Schriftart verwenden wir auch für Internetadressen (URLs):
https://www.python.org/doc/humor/
Anklickbare Menüpunkte und Beschriftungen werden in
KAPITäLCHEN
gesetzt
Namen von Tools sehen so aus:
Werkzeug
Auch Platzhalter, die Sie geistig mit eigenen Werten füllen müssen, werden kursiv hervorgehoben:
<passwort>
Teil I
IN DIESEM TEIL …
Warum Sie unbedingt Python lernen solltenWer sonst noch Python verwendetFirst things first: Python installierenPython ausführen und diesen Teil nie wieder anschauenKapitel 1
IN DIESEM KAPITEL
Eine Sprache für Leute mit DeadlinesPython ist nicht gleich PythonPython ist kein Spielzeug – außer Sie spielen damitBevor es losgeht, brauchen Sie erst mal eine Python-Lizenz. Diese kostet als Einzelplatz-Lizenz 7543,20 €. Alternativ können Sie auch eine Volumenlizenz für eine Bepreisung pro Prozessorkern erwerben. Wenn Sie einen Großrechner mit mehr als 64 Kernen haben, bekommen Sie Rabatt. Umgerechnet kostet die Lizenz dann 5380 €.
Bevor Sie jetzt verärgert das Buch in die Ecke pfeffern, möchten wir uns entschuldigen. Das war nicht ganz ernst gemeint. Python gibt's für lau. Aber auch sonst gibt es viele Dinge, die für Python sprechen.
In diesem Buch geht es um die Programmiersprache Python. Es soll Sie motivieren, über den Tellerrand zu blicken, und Ihnen helfen, die Freude an der Programmierung wiederzufinden, wenn Sie sie im Dschungel zwischen fleischfressenden Ameisen und todbringenden Moskitos wie TypeScript-Typen, Java-Objekten, C-Pointern und C++-Templates verloren haben.
Python ist eine vielseitige Programmiersprache, die durch Einfachheit und Eleganz besticht.
Wir glauben fest daran, dass sich Ihr Programmier-Karate in C, Java oder anderen Sprachen verbessert, wenn Sie erlernen, wie Python manche Dinge regelt.
Egal woher Sie gerade kommen, Python ist einen Besuch wert – und wer weiß, vielleicht möchten Sie ja sogar noch etwas länger bleiben.
Wenn Sie beruflich mit anderen Sprachen arbeiten, kann Python Ihnen interessante Design-Patterns aufzeigen. Vielleicht ist Python aber auch eine sinnvolle Ergänzung zu Ihrem bestehenden Werkzeugkasten. Beispielsweise könnten Sie mit Python eine elegante Test-Umgebung zaubern, wenn Sie viel mit SQL-Datenbanken arbeiten, oder Sie verwenden eines der Dutzende in Python geschriebener Tools.
Python lediglich die zweite Geige spielen zu lassen, wäre aber Verschwendung, denn Python ist als Programmiersprache und -umgebung durchaus ernstzunehmen. Es gibt Hunderte Bibliotheken und Frameworks für alle möglichen Anwendungsfälle, von Server-Monitoring, Webseiten und Computerspielen über Micro-Controller-Steuerung bis hin zu Tests und Automatisierung – es ist für alle was dabei.
Es gibt viele Dinge, die Python zu etwas Besonderem machen:
Einfache, ausdrucksstarke und elegante Syntax
Schnell (... genug)
Läuft auf allen Betriebssystemen
Unglaublich vielseitig (vom Roboter bis zur Webseite ist alles möglich)
Die Benutzung macht Spaß
Python spielt auch gerne mit den anderen Kindern (Sprachen)
Gigantische Community
Wenn Sie es sich vorstellen können, dann gibt es dafür schon ein Modul
Python wohnt eine besondere Philosophie inne, die Sie auf der ersten Schummelseite im Buch finden. Das sogenannte »Zen of Python« fasst in 20 Sentenzen die Prinzipien zusammen, die Pythons Design über die Jahre lenkten. Tatsächlich enthält das Gedicht nur 19 Zeilen – die letzte wird vielleicht eines Tages noch aufgeschrieben.
Vielleicht länger, als Sie dachten!
Von C und Java haben Sie sicherlich schon einmal gehört oder sogar schon Erfahrungen damit gesammelt – immerhin sind diese Sprachen (gefühlt) uralt. Die Sprache C wurde 1972 entwickelt, Java hingegen wurde 1995 in die Welt geworfen. Sicher überrascht es Sie zu erfahren, dass die erste Version von Python bereits im Jahr 1991 erschien – damit ist Python sogar 4 Jahre älter als Java. Trotzdem wirkt Python eventuell wie ein neuzeitliches Phänomen.
Als Lernsprache war Java lange der Platzhirsch an den Unis und wenn Sie sich auf Jobplattformen wie Xing oder LinkedIn nach Java-Programmierjobs umschauen, so werden Sie nicht lange suchen müssen; Python-Jobs hingegen sind immer noch eher rar gesät. Python befindet sich jedoch auf der Überholspur und ist an US-Universitäten inzwischen Lernsprache Nummer eins – da ist es eine Frage der Zeit, bis der Jobmarkt diesen Trend widerspiegelt.
Schwer zu sagen. Firmenpolitik?
Es mag dafür verschiedene Gründe geben, auf die wir nicht alle eingehen möchten. Allerdings glauben wir, dass ein Faktor besonders wichtig war: Java wurde von Sun Microsystems entwickelt (eine Firma, die es heute nicht mehr gibt), Python aber wurde von Guido van Rossum erfunden (einem holländischen Informatiker, den es heute durchaus noch gibt).
In der Geschichte spielen sicher andere Faktoren eine wichtige Rolle, doch diese Besonderheit möchten wir hervorheben. Java ist sozusagen ein Kind der Unternehmenswelt, Python hingegen entstand als Spaßprojekt eines Einzelnen. Bis heute merkt man das, denn Python konnte sich – von einer Community vorangetrieben – ohne den Druck eines Marktes entwickeln, der auf Unternehmen und Konsortien einwirkt und sie behäbig macht.
An C# erkennt man dies sehr gut. Diese Sprache wurde 2001 von Microsoft entwickelt und enthält immer noch goto-Statements – die Edsger W. Dijkstra in seinem Artikel »Go To Statement Considered Harmful« bereits 1968 öffentlich schmähte. Um den Markt nicht unnötig zu verwirren, darf eine neue Programmiersprache nicht zu abgefahren aussehen, sonst lehnen Programmierer sie ab. C# sieht daher aus wie Java und enthält Altlasten wie das goto-Statement.
Verstehen Sie uns nicht falsch – sowohl Johannes als auch Horst programmieren für ihr Leben gerne und sind große Fans von C#. Jedoch entstammt Python einer anderen Kultur und bringt ein bestimmtes Gedankengut mit, das uns bis heute positiv beeinflusst.
Natürlich ist auch Python nicht im luftleeren Raum entstanden und borgt sich Konzepte sowie Syntax von anderen Programmiersprachen. Allerdings gibt es in Python nur Sprachfeatures, die die Community haben wollte. Sie werden sich daher sicher wundern, dass es manche Features in Python gar nicht gibt, die Sie aus anderen Sprachen kennen, wie etwa statische Typisierung, Switch-Case-Anweisungen, Inkrement-Operatoren (zum Beispiel i++) oder ein Semikolon am Ende der Zeile.
Sie werden sich aber auch wundern, was Python stattdessen mitbringt:
Alles ist ein Objekt
Alles ist dynamisch
Code wird durch Einrücken gruppiert, nicht durch geschweifte Klammern
Viele Operatoren sind Schlüsselworte statt Symbole
List Comprehensions
Generatoren
Dekoratoren
Natürlich hat auch Python einige seltsame Eigenarten. Beispielsweise wussten die Entwickler früher nicht, ob sie abkürz, unter_striche oder camelCase zur Benennung verwenden sollten. Auch konnten sie sich oft nicht für ein bestimmtes Programmierparadigma entscheiden (prozedural? objektorientiert?). In der Praxis fällt dies aber kaum ins Gewicht.
Die Antwort auf diese Frage lautet »ja«.
Python wird in der Regel durch einen Interpreter ausgeführt, also ist es eigentlich eine Skriptsprache. Allerdings wird wie bei Java ein Byte-Code erzeugt und interpretiert. Python ist außerdem eine Turing-vollständige Sprache, also können Sie damit theoretisch alles programmieren, was Sie möchten.
Das kommt drauf an, aber eigentlich nicht.
Im normalen Sprachgebrauch bezeichnet Python hauptsächlich die Sprache und der Interpreter ist gleich mitgemeint, allerdings kommt es ganz auf den Interpreter an, wie schnell Ihre Programme später laufen.
Wenn Sie Python von der Stange installieren, bekommen Sie natürlich einen (in C geschriebenen) Interpreter mitgeliefert. Dessen Anspruch ist vor allem, eine gut verständliche Referenz zu bieten, und nicht so sehr, Geschwindigkeitsrekorde zu brechen. Allerdings müssen Sie diesen auch gar nicht nutzen.
Manche Interpreter bringen einen Just-in-Time-Compiler mit, der die Ausführung beschleunigt (zum Beispiel PyPy), und es ist durchaus möglich, Python-Code zu kompilieren.
Die Ausführung durch einen Interpreter hat prinzipbedingt eine langsamere Geschwindigkeit zur Folge, etwa im Gegensatz zu C, C++ oder blankem Assembler, aber selbst wenn Sie mal mit Performance-Problemen zu kämpfen haben, ist es nicht zu spät, die kritischen Teile in einer anderen Sprache zu schreiben. Diesen Weg geht beispielsweise SciPy, eine Python-Bibliothek für wissenschaftliche Berechnungen, bei der kritische Stellen in Fortran geschrieben wurden.
Die Sprache selbst ist also nicht langsam, denn es steht Ihnen offen, einen anderen Interpreter zu verwenden. Für die meisten Anwendungsfälle ist aber der Standard-Interpreter schnell genug.
Python benutzen alle Leute, die Deadlines haben und guten Code schreiben möchten, ohne sich dabei von komplizierter Syntax und verwirrender Semantik ablenken zu lassen, darunter WissenschaftlerInnen, Web-EntwicklerInnen, TesterInnen und EntwicklerInnen.
Verschiedene große Player setzen heute auf Python, darunter etwa Finanzinstitute (Deutsche Bank, Goldman Sachs, PayPal), Medienkonzerne (Netflix), Tech-Firmen (Facebook, Google, Amazon, Microsoft, Dropbox) und Forschungseinrichtungen (NASA, das Deutsche Zentrum für Luft- und Raumfahrt oder Universitäten).
Auf jeden Fall! Im Moment herrscht Goldgräberstimmung!
Im Gegensatz zu Java-Projekten sind Python-Projekte rarer gesät, allerdings werden es immer mehr.
Natürlich ist Java immer noch die 0815-Allzweckwaffe, wenn es um Programmierung geht, aber besonders in der Forschung wird verstärkt auf Python gesetzt. Da Python flexibel ist und einfach zu erlernen, gibt es hier viele interessante Projekte zum Thema Künstliche Intelligenz, Machine Learning, aber auch Data Science und Statistik. Da die Schnittmenge dieser Verfahren mit Business-Intelligence-Anwendungen groß ist, kommt Python auch in der freien Wirtschaft zum Einsatz.
Auch der Computerspielemarkt ist in den letzten Jahren zu einer Milliarden-Dollar-Industrie geworden und Python wird oft als Skriptsprache für Computerspiele eingesetzt; auch manche CAD-Anwendungen nutzen Python zur Automatisierung.
Wenn Firmen auch oft nicht ihr Kerngeschäft mit Python erledigen, so wird in Job-Angeboten und Ausschreibungen Python oft als zusätzlich gewünschte Qualifikation aufgeführt. Es gibt also genug für Python-Programmierende zu tun und der Einstieg oder sogar Umstieg lohnt sich.
Sowohl Horst als auch Johannes haben bisher in größeren und kleineren Firmen mit Python gearbeitet und ihren Lebensunterhalt mit Python verdient. Dabei waren Projekte für Verlage, Universitäten, Medienkonzerne, Verbraucherportale und viele weitere.
Python ist nicht nur geeignet, um abstrakte Parser für domänenspezifische Sprachen oder Webseiten zu bauen, sondern befähigt Sie genauso gut, in Echtzeitanwendungen Sicherheitslücken einzubauen, indem Sie den Speicher einfach selber verwalten (nur weil es geht, heißt das nicht, dass Sie das tun sollten – aber es geht). Python ist unglaublich vielseitig!
Es spricht nichts dagegen, wenn Sie sich andere Sprachen angucken – das empfehlen wir sogar. Auch dazu finden Sie Ausgaben in der »Für Dummies«-Serie, zum Beispiel »JavaScript für Dummies« von Andy Harris. Nun jedoch, wo Sie das Python-Buch schon in der Hand haben, empfehlen wir Ihnen natürlich, erst mal mit Python anzufangen.
Kapitel 2
IN DIESEM KAPITEL
Die Installation für Windows, macOS und LinuxDigitale Schlangenbeschwörung: Python zum Laufen bringenEin Kapitel zum ÜberspringenBevor es losgehen kann, brauchen Sie erst einmal Python. Unter Windows und macOS ist der einfachste Weg, das Installationsprogramm auf der offiziellen Webseite herunterzuladen. Dieser Weg steht auch Linux-Nutzern offen, aber diese verwenden wohl lieber einen Paketmanager.
Bitte installieren Sie die neuste Version von Python, mindestens Version 3.8. Wenn Sie dieses Buch in Händen halten (nach dem 1. Januar 2020), wird Python 2 nicht mehr mit Updates versorgt. Ignorieren Sie bitte alles, was Sie zu Python 2 im Internet finden.
Weil dieses Buch vor allem für Umsteiger geschrieben wurde, gehen wir eigentlich davon aus, dass Sie schon wissen, wie Sie Programme auf Ihrem Betriebssystem installieren. Sie können die folgenden Seiten daher überspringen (oder sie gleich herausreißen, sofern das Buch Ihnen gehört) und direkt mit Kapitel 3 unter Der Schlange Beine machen – Python ausführen weitermachen.
Die Installation unter Windows ist denkbar einfach: Laden Sie den Installer herunter und führen Sie ihn aus. Während der Installation müssen Sie lediglich ein paar Einstellungen vornehmen, die in diesem Abschnitt erklärt werden.
Navigieren Sie ihren Lieblingsbrowser auf die offizielle Webseite https://python.org. Aktuell sieht die Webseite aus wie in Abbildung 2.1. Der Menüeintrag DOWNLOADS klappt beim Überfahren mit der Maus ein Untermenü aus.
Abbildung 2.1: Alle Downloads finden Sie auf der offiziellen Seite
Ein voreiliger Klick auf den großen, grauen Button lädt Python für 32-Bit-Betriebssysteme herunter. Wir gehen davon aus, dass Sie die 64-Bit-Version wünschen – den Installer dafür finden Sie im Unterpunkt ALL RELEASES. Dort erscheint eine Tabelle, in der verschiedene Versionen aufgeführt sind. Wählen Sie die aktuelle Version (zurzeit ist das PYTHON 3.8.2). Ein Klick führt Sie auf eine weitere Seite. An deren Fuß finden Sie eine Tabelle. Wählen Sie den Eintrag WINDOWS X86-64 EXECUTABLE INSTALLER. Beim Download erkennen Sie das richtige Installationsprogramm an der Endung »amd64.exe«, wie Abbildung 2.2 zeigt.
Abbildung 2.2: Laden Sie die 64bit Version herunter
Führen Sie den Installer aus. Sie werden mit dem Bildschirm aus Abbildung 2.3 begrüßt.
Abbildung 2.3: Wählen Sie CUSTOMIZE INSTALLATION
Setzen Sie gleich auf der ersten Seite (am unteren Rand) die beiden Häkchen
INSTALL LAUNCHER FOR ALL USERS (RECOMMENDED)
ADD PYTHON 3.8 TO PATH
Der erste Haken sorgt dafür, dass Windows die Python-Installation an einem Ort lagert, den Sie gut im Explorer wiederfinden (etwa C:\Programme\Python38). Der zweite Haken ändert die Pfad-Variable, sodass Sie Python ohne Umwege von der Kommandozeile aus starten können. Wählen Sie danach bitte CUSTOMIZE INSTALLATION, um noch einige Anpassungen vorzunehmen.
Auf der Seite namens OPTIONAL FEATURES erscheinen weitere Checkboxen, wie in Abbildung 2.4 zu sehen. Hier können Sie getrost alle Haken setzen. Unbedingt sollten Sie den Eintrag PIP auswählen – das ist der Paketmanager, über den Sie später Software nachinstallieren können. Ein Klick auf NEXT bringt Sie Ihrem Ziel näher.
Abbildung 2.4: Auswahl der Features – Wählen Sie auch hier alle Häkchen aus!
Nun erscheint ein weiterer Dialogschritt, in dem Sie alle Zusatzoptionen auswählen können (Abbildung 2.5). Besonders wichtig ist der Eintrag ADD PYTHON TO ENVIRONMENT VARIABLES. Hier sollten Sie einen Haken setzen, damit Sie Python komfortabel von der Kommandozeile aus starten können. Klicken Sie abschließend auf INSTALL.
Abbildung 2.5: Erweiterte Optionen – Wählen Sie alle Häkchen aus!
Die Installation dauert einige Minuten, die Ihnen ein Ladebalken versüßt (so einer wie in Abbildung 2.6). Um die Wartezeit zu überbrücken, empfehlen wir das Vorbereiten von Steuerunterlagen oder nachdenkliches Starren auf einen Punkt circa 350 Meter hinter Ihrem Monitor.
Achten Sie währenddessen auf die Taskleiste. Da die Installation Administratorrechte erfordert, wird die Nutzerkontrolle (UAC, User Account Control) Sie darum bitten, sich einzuloggen. Das geschieht in einem separaten Fenster, das aufgeht, sobald Sie den INSTALL-Button betätigen.
Abbildung 2.6: Gehen Sie mit dem Hund raus!
Nach der Installation erscheint noch das Fenster SETUP WAS SUCCESSFUL. Ein Klick auf CLOSE beendet die Installation.
Um zu testen, ob die Installation geklappt hat, öffnen Sie eine Kommandozeile. Drücken Sie die Windowstaste und gleichzeitig. Im folgenden Dialog geben Sie cmd ein. Dadurch öffnet sich ein Konsolenfenster. Statt »cmd« können Sie auch PowerShell öffnen.
Sie können auch im Startmenü nach »Eingabeaufforderung« suchen. Unter Windows 10 öffnen Sie das Startmenü und tippen einfach drauf los.
Geben Sie python --version ein. Daraufhin sollte die richtige Version ausgegeben werden:
Das hat geklappt. Sie sind bereit!
Unter Windows sieht die Kommandozeile eigentlich aus wie hier gezeigt. Im Buch verwenden wir dagegen durchgängig die normalisierte Schreibweise ($kommando).
Unter macOS gibt es mehrere Wege, um an Python zu kommen. Der einfachste Weg verläuft genau wie unter Windows – Sie verwenden den Installer von der Webseite. Alternativ kann man Python auch mithilfe des Paketmanagers Homebrew installieren.
Auch die Installation auf Apple-Systemen beginnt auf der offiziellen Python-Webseite unter https://www.python.org/. Laden Sie dort den Installer für Ihre Architektur herunter. Diesen finden Sie auf der Startseite unter DOWNLOADS im Unterpunkt unter MAC OS X. Wenn Sie dem Eintrag LATEST PYTHON 3 RELEASE ... folgen, finden Sie auf der folgenden Seite unten eine Tabelle mit Installationsprogrammen, dort nehmen Sie den MACOS 64-BIT INSTALLER (Abbildung 2.7).
Abbildung 2.7: Laden Sie den Installer herunter!
Nach dem Herunterladen führen Sie den Installer aus.
Lassen Sie sich vom Assistenten durch den Installationsprozess führen. Der heißt Sie zuerst willkommen, wie in Abbildung 2.8 dargestellt.
Abbildung 2.8: Willkommen!
Nehmen Sie sich etwas Zeit, um die Schritte BITTE LESEN und LIZENZ zu ignorieren und durch Klicken auf FORTFAHREN zu überspringen. Sie können natürlich auch die Lizenz vollständig studieren und sich anschließend gegen die Nutzung von Python entscheiden – dieses Buch ist auch ein prima Monitorständer.
Investieren Sie die gewonnene Zeit lieber in die Entscheidung darüber, wohin das Ganze installiert werden soll. Unter ZIELVOLUME AUSWäHLEN klicken Sie auf die Festplatte, auf der Sie Python installieren möchten.
Im Schritt INSTALLATIONSTYP, der so aussieht wie in Abbildung 2.9, sollten Sie noch einige Einstellungen vornehmen, indem Sie auf ANPASSEN klicken.
Abbildung 2.9: Anpassen!
Im Bildschirm »Angepasste Installation« (Abbildung 2.10) haben Sie einige Checkboxen zur Auswahl:
PYTHON FRAMEWORK
(das können Sie eh nicht abwählen)
GUI APPLICATIONS
(dann bekommen sie den IDLE-Editor gleich mit dazu)
UNIX COMMAND-LINE TOOLS
(Installiert einige Unix-Tools)
PYTHON DOCUMENTATION
(Lesematerial für später)
SHELL PROFILE UPDATER
(um das neue Python vom Terminal aus aufzurufen)
INSTALL OR UPGRADE PIP
(Das ist Pythons Paketmanager, den brauchen Sie unbedingt!)
Wählen Sie alle aus (das sollte standardmäßig der Fall sein), aber befassen Sie sich kurz mit den einzelnen Punkten und entscheiden Sie, ob diese für Ihr System passen.
Abbildung 2.10: Wählen Sie alle Pakete aus!
Als Lohn für Ihre Klickmühen erhalten Sie einen Ladebalken und müssen kurz auf die Übertragung der Dateien warten – eine gute Gelegenheit, Geschirr in die Küche zu bringen. Sofern Sie eine Webcam installiert haben, können Sie nebenher das Programm »Photo Booth« starten und Ihr Antlitz im Auge behalten. Wenn Sie während der Dateiübertragung sichtbar altern, sollten Sie über die Anschaffung einer SSD nachdenken.
Wenn alles geklappt hat, bekommen Sie einen Bildschirm wie in Abbildung 2.11.
Achtung, schließen Sie nicht einfach den Installer, sondern lesen Sie die Informationen im Textfenster! Eventuell fehlen Ihnen (wie in Abbildung 2.11 gezeigt) einige SSL-Zertifikate, die Sie zum Absichern von bestimmten Netzwerkverbindungen benötigen. Folgen Sie bitte auch den zusätzlichen Anweisungen des Installers – diese können für Ihr System etwas anders ausfallen.
Wenn Sie am Ende auf SCHLIESSEN klicken, werden Sie noch gefragt, ob der Installer weg kann. Kann er.
Abbildung 2.11: Fertig!
Wenn Sie alles installiert haben, sollten Sie im Terminal Python ausführen können:
Wenn die Versionsnummer erscheint, ist Ihre Installation fertig.
Top! Sie sind bereit!
Für erfahrene Nutzer gibt es zusätzlich die Option, Python mithilfe des Paketmanagers Homebrew zu installieren. Sollten Sie diesen noch nicht installiert haben, können Sie ihn vom Terminal aus so installieren:
Durch diesen Befehl wird der Paketmanager installiert. Danach installieren Sie Python:
Testen Sie bitte danach, welche Version aktuell ist. Der Befehl python --version sollte die neuste Python-Version ausgeben, die Sie mit Homebrew installiert haben.
Der Befehl python3 --version sollte die gleiche Ausgabe bewirken. Falls nicht, müssen Sie eventuell Ihren Pfad anpassen, zum Beispiel mit
Das sollte für macOS Catalina klappen, wo standardmäßig die Z-Shell verwendet wird. Nutzen Sie stattdessen bash, schreiben sie es in die Datei ˜/.bashrc. Nutzen Sie etwas ganz anderes, schreiben Sie es in die entsprechende Konfigurationsdatei.
Linux-Distributionen gibt es in allen Farben und Dialekten. Obwohl wir uns der Unterschiede zwischen den Distributionen, etwa Unix, Linux und GNU/Linux, und auch der Debatte um die Namensgebung bewusst sind (https://de.wikipedia.org/wiki/GNU/Linux-Namensstreit), subsumieren wir Betriebssysteme wie RHEL/CentOS, Debian, Ubuntu, FreeBSD, OpenBSD und Co. unter dem Begriff Linux. Der Begriff Linux meint im Buch also freie, Unix-ähnliche Mehrbenutzer-Betriebssysteme, meist mit Linux-Kernel, die sich vor allem von Windows und macOS unterscheiden.
Unter Linux gibt es mehrere Wege, um Python zu installieren:
Sie laden ein Paket von der offiziellen Webseite
Sie nutzen den Paketmanager Ihrer Distribution
Sie kompilieren Ihre eigenen Binarys
Sie lehnen sich zurück und grinsen entspannt, weil Ihre Distro Python mitbringt
Um nicht auf alle Eigenschaften und Eigentümlichkeiten der verschiedenen Distributionen eingehen zu müssen, beschränken wir uns auf Ubuntu-Linux, weil es einsteigerfreundlich, sehr verbreitet und gut dokumentiert ist. Trotzdem sollen sich Nutzer anderer Distributionen natürlich auch angesprochen fühlen.
Bei vielen Distributionen ist eine Python-Installation im Standardumfang enthalten. Ein frisch installiertes Ubuntu in der Version 18.04 LTS zum Beispiel bringt Python 3.6 mit. Geben Sie einfach auf einem Terminal-Emulator Ihrer Wahl den entsprechenden Befehl ein:
Freundlicherweise weist Ubuntu darauf hin, dass der korrekte Befehl python3 lautet.
Die meisten Linuxe werden mit einer Installation von Python ausgeliefert, diese entspricht allerdings nicht immer der allerneusten Version.
Falls Sie eine Versionsnummer kleiner als Python 3.8 installiert haben oder der Befehl $ python3 --version einen Fehler ausgibt, müssen Sie Python 3.8 nachinstallieren. Verwenden Sie am Besten den Paketmanager über die Kommandozeile. Für Installationen brauchen Sie in aller Regel Root-Rechte.
Nicht alle Linux-Distributionen liefern immer frische Pakete aus. Ende 2019 ist die aktuellste Version 3.8.2. Selbst wenn Sie Python 3 schon installiert haben, sollten Sie sicherstellen, dass es auch die Version 3.8 ist, damit Sie keine Überraschungen erleben, wenn Sie den Code im Buch ausprobieren.
Im Buch finden Sie hin und wieder Befehle, die auf einer Kommandozeile eingegeben werden. Um das anzuzeigen, wird durchgängig die folgende Form verwendet, wobei <command> für einen beliebigen Befehl steht:
Kommandozeilen gibt es wie Sand am Meer und alle verwenden einen unterschiedlichen Prompt. Wir können unmöglich wissen, ob Sie an einem macOS-, Windows- oder Linux-Rechner sitzen, ob Sie PowerShell, cmd, Bash, zsh oder etwas anderes verwenden. Im Buch werden Kommandozeilen immer durch ein $-Zeichen eingeleitet – das soll die Eingabeaufforderung der Bash andeuten, die zu den ältesten und bekanntesten Kommandozeileninterpretern gehört.
Außerdem gibt es mehrere Arten, Python zu installieren. Unter Windows und macOS etwa bekommen Sie python als ausführbaren Befehl. In älteren Linuxen wird oft python3 als Befehl verwendet, wenn gleichzeitig ein älteres Python 2 installiert ist. Damit es keine Verwirrung gibt, wird im Buch explizit die folgende Form verwendet:
Mit <python3> meinen wir stets Ihren Python-Interpreter in der neusten Version (3.8+), auch wenn er eventuell nicht genau so heißt.
Kapitel 3
IN DIESEM KAPITEL
Los geht's!Die Qual der WahlWenn Sie Python installieren, erhalten Sie einen Interpreter, der Ihren Python-Code ausführt. Diesen können Sie auf verschiedene Arten aktivieren:
Sie starten die Python-Konsole (den REPL)
Sie rufen
python
von der Kommandozeile mit einer Code-Datei auf
Sie nutzen eine IDE
Ein charmantes Feature von Python ist der sogenannte Read-Eval-Print-Loop, kurz REPL. Der REPL ist eine kleine Konsole, in der Sie Python-Code ausprobieren können:
Der REPL begrüßt Sie stets mit einer Eingabezeile, die durch drei Pfeile angedeutet wird: >>>. Sein Name ist Programm:
Ihre Eingaben werden
eingelesen
(read)
Sobald Sie drücken, wird der Code
ausgeführt
(execute)
Sofern der Code ein Ergebnis produziert hat, wird dieses unmittelbar
ausgegeben
(print)
Das Ganze geht von vorne los (loop)
Rufen Sie zum Schließen des REPL die Funktion exit() auf.
Wenn Sie im Buch Code-Blöcke sehen, die mit >>> anfangen, dann handelt es sich um einen Code-Schnipsel, den Sie am besten in einer REPL-Sitzung eingeben.
Praktisch am REPL ist, dass Sie sofort Feedback bekommen, ob der Code richtig war. Auch werden Ergebnisse von Berechnungen sofort wieder ausgegeben. Das ist unersetzlich, wenn Sie mal schnell Code ausprobieren möchten.
Das zuletzt erzeugte Ergebnis wird im REPL immer direkt ausgegeben. Sie können es danach noch weiterverarbeiten, denn es wird in einer Variablen namens _ zwischengespeichert.
Nachteilig am REPL ist, dass Sie nur in einer temporären Sitzung arbeiten. Sobald Sie die Sitzung beenden, ist Ihr Code verschwunden. Für längere Programme ist das nicht geeignet, schon gar nicht, wenn Sie diese wiederholt ausführen möchten. Es ist besser, Sie speichern Ihren Python-Code in einer Datei und bearbeiten diese in einem geeigneten Programm, etwa einem Editor oder einer IDE.
Es gibt noch andere Python-Konsolen, allerdings überlassen wir es Ihnen, diese eigenhändig zu installieren. Komfortabler als der Standard-REPL ist zum Beispiel die »IPython«-Shell. Unter Wissenschaftlern sind »Jupyter Notebooks« beliebt. Wir gehen nicht im Detail darauf ein, sondern konzentrieren uns auf den kleinsten gemeinsamen Nenner – der REPL ist bei jeder Installation dabei.
Zum schnellen Ausprobieren ist der REPL toll, aber sobald Sie mehr als drei Zeilen tippen, wird es unkomfortabel. Besser ist, wenn Sie Ihren Code in Dateien speichern und diese dann an den Interpreter übergeben, etwa so:
Die Python-Dateien können Sie mit Ihrem Lieblingseditor verarbeiten, etwa vim, Notepad++ oder Sublime Text. Diese Editoren müssen Sie separat installieren. Alternativ können Sie eine integrierte Entwicklungsumgebung (IDE) benutzen. Die meisten modernen IDEs unterstützen auch die Entwicklung mit Python. Zum Beispiel gibt es Microsoft Visual Studio Code oder PyCharm von JetBrains.
Der Vorteil von IDEs ist, dass diese bereits vorkonfiguriert sind und etwa das Ausführen von Python-Code durch einen einfachen Klick ermöglichen, allerdings müssen Sie sich ein bisschen an die Regeln der IDE halten. Reine Editoren sind etwas schneller und flexibler, aber Sie müssen sie erst an Ihre Bedürfnisse anpassen.
Die Qual der Wahl überlassen wir Ihnen. Wir ermutigen Sie, ein paar Programme auszuprobieren, bis Sie eines gefunden haben, das zu Ihnen passt. Wir selbst haben natürlich unsere Präferenzen. Horst mag sehr gerne Visual Studio Code. Für diesen Editor gibt es so viele Plug-ins, dass er sich fast wie eine IDE anfühlt. Johannes mag gerne Sublime Text, weil er dessen Flexibilität und Geschwindigkeit schätzt. Sowohl Horst als auch Johannes nutzen beim professionellen Arbeiten die IDE PyCharm, da diese alle wichtigen Entwicklerwerkzeuge integriert, wie zum Beispiel Git oder Werkzeuge zum Testen von Code.
Teil II
IN DIESEM TEIL …
Kleiner Python-Crash-KursSchlüsselwörter, Anweisungen, Ausdrücke und FunktionenEin Gefühl für die Sprache entwickelnLernen Sie intelligente Datenstrukturen kennenComprehensions: Pythons Syntax zur Daten-verarbeitungAus Programmen Kontakt zur Außenwelt aufnehmenKapitel 4
IN DIESEM KAPITEL
Ihre ersten Worte»Artur est un perroquet«Die Sprache auf zwei SeitenHic forum est. Populus properat. Wer im Latein-Unterricht das Schulbuch »Felix« verwendet hat, wird sich möglicherweise sein Leben lang an diese ersten Sätze erinnern, auch wenn sie anfangs kryptisch erschienen. Der erste Eindruck bleibt also – und hier bekommen Sie Ihren ersten Eindruck von Python, der sich hoffentlich ebenso einbrennt.
Johannes erhebt allerdings Einspruch – wenn Sie, wie er, Französisch hatten, lautete der erste Satz wohl eher »Arthur est un perroquet«.