Erhalten Sie Zugang zu diesem und mehr als 300000 Büchern ab EUR 5,99 monatlich.
Der Schnellkurs für angehende Python-Profis - Verwenden Sie Python-Bibliotheken und -Werkzeuge, darunter pytest, Pygame, Matplotlib, Plotly und Django - Behebung von Programmierfehlern und Lösung gängiger Programmierprobleme - Neu in dieser Ausgabe: u.a. VS Code für die Textbearbeitung und das pathlib-Modul für die Dateiverwaltung»Python Crashkurs« zählt zu den weltweiten Bestsellern unter den Einführungen in die Programmiersprache Python. Mit dieser kompakten und gründlichen Anleitung werden Sie in kürzester Zeit Programme schreiben, Probleme lösen und funktionierende Anwendungen entwickeln. Zu Beginn führt Sie Autor Eric Matthes in grundlegende Programmierkonzepte wie Variablen, Listen, Klassen und Schleifen ein. Sie werden Ihr neues Wissen in die Praxis umsetzen, indem Sie ein von »Space Invaders« inspiriertes Arcade-Spiel konzipieren und eine Reihe von Datenvisualisierungen mit den praktischen Python-Bibliotheken programmieren. Mit den Übungen des Buches lernen Sie - leistungsfähige Python-Bibliotheken und -Werkzeuge zu verwenden, darunter pytest, Pygame, Matplotlib, Plotly und Django - immer komplexere 2D-Spiele zu erstellen, die auf Tastendruck und Mausklicks reagieren - Anwendungen zu bauen, mit denen Benutzer Konten erstellen und ihre Daten verwalten können. Stellen Sie Anwendungen online bereit. - interaktive Datenvisualisierungen mit einer Vielzahl von Datensätzen zu generieren - Programmierfehler zu beheben und klassische Programmierprobleme zu lösenNeu in dieser Auflage: Diese 3. Auflage wurde komplett auf den jüngsten Stand des Python-Codes gebracht. Zu den neuen und aktualisierten Themen gehören VS Code für die Textbearbeitung, das pathlib-Modul für die Dateiverwaltung, pytest für das Testen Ihres Codes sowie die neuesten Funktionen von Matplotlib, Plotly und Django. Wenn Sie in die Programmierung einsteigen wollen, wird Ihnen »Python Crashkurs« die Fähigkeiten vermitteln, schnell echte Programme zu schreiben.
Sie lesen das E-Book in den Legimi-Apps auf:
Seitenzahl: 797
Das E-Book (TTS) können Sie hören im Abo „Legimi Premium” in Legimi-Apps auf:
Copyright und Urheberrechte:
Die durch die dpunkt.verlag GmbH vertriebenen digitalen Inhalte sind urheberrechtlich geschützt. Der Nutzer verpflichtet sich, die Urheberrechte anzuerkennen und einzuhalten. Es werden keine Urheber-, Nutzungs- und sonstigen Schutzrechte an den Inhalten auf den Nutzer übertragen. Der Nutzer ist nur berechtigt, den abgerufenen Inhalt zu eigenen Zwecken zu nutzen. Er ist nicht berechtigt, den Inhalt im Internet, in Intranets, in Extranets oder sonst wie Dritten zur Verwertung zur Verfügung zu stellen. Eine öffentliche Wiedergabe oder sonstige Weiterveröffentlichung und eine gewerbliche Vervielfältigung der Inhalte wird ausdrücklich ausgeschlossen. Der Nutzer darf Urheberrechtsvermerke, Markenzeichen und andere Rechtsvorbehalte im abgerufenen Inhalt nicht entfernen.
Eric Matthes
Eine praktische, projektbasierteProgrammiereinführung
3., überarbeitete und aktualisierte Auflage
Eric Matthes
Lektorat: Gabriel Neumann
Lektoratsbüro: Julia Griebel, Friederike Demmig
Fachgutachter: Kenneth Love
Übersetzung & Satz: G&U Language & Publishing Services GmbH, Flensburg, www.GundU.com
Copy-Editing: Annette Schwarz, Ditzingen
Herstellung: Stefanie Weidner, Frank Heidt
Umschlaggestaltung: Eva Hepper, Silke Braun
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.
ISBN:
978-3-86490-989-4
978-3-98890-108-8
ePub
978-3-98890-109-5
mobi
978-3-98890-110-1
3., überarbeitete und aktualisierte Auflage 2024
Translation Copyright für die deutschsprachige Ausgabe © 2024 dpunkt.verlag GmbH
Wieblinger Weg 17
69123 Heidelberg
Copyright © 2023 by Eric Matthes. Title of English-language original: Python Crash Course: A Hands-On, Project-Based Introduction to Programming, 3rd edition, ISBN 9781718502703, published by No Starch Press Inc. 245 8th Street, San Francisco, California United States 94103. The German Language 3rd edition Copyright © 2024 by dpunkt.verlag GmbH under license by No Starch Press Inc. All rights reserved.
Hinweis:
Dieses Buch wurde mit mineralölfreien Farben auf PEFC-zertifiziertem Papier aus nachhaltiger Waldwirtschaft gedruckt. Der Umwelt zuliebe verzichten wir zusätzlich auf die Einschweißfolie. Hergestellt in Deutschland.
Schreiben Sie uns:
Falls Sie Anregungen, Wünsche und Kommentare haben, lassen Sie es uns wissen: [email protected].
Die vorliegende Publikation ist urheberrechtlich geschützt. Alle Rechte vorbehalten. Die Verwendung der Texte und Abbildungen, auch auszugsweise, ist ohne die schriftliche Zustimmung des Verlags urheberrechtswidrig und daher strafbar. Dies gilt insbesondere für die Vervielfältigung, Übersetzung oder die Verwendung in elektronischen Systemen.
Es wird darauf hingewiesen, dass die im Buch verwendeten Soft- und Hardware-Bezeichnungen sowie Markennamen und Produktbezeichnungen der jeweiligen Firmen im Allgemeinen warenzeichen-, marken- oder patentrechtlichem Schutz unterliegen.
Alle Angaben und Programme in diesem Buch wurden mit größter Sorgfalt kontrolliert. Weder Autor noch Verlag noch Übersetzer können jedoch für Schäden haftbar gemacht werden, die in Zusammenhang mit der Verwendung dieses Buches stehen.
5 4 3 2 1 0
Der Autor
Der Fachgutachter
Danksagung
Vorwort zur dritten Auflage
Einleitung
Zielgruppe
Lernstoff
Onlinematerial
Warum Python?
Teil 1Grundlagen
1Erste Schritte
Die Programmierumgebung einrichten
Python-Versionen
Python-Codeausschnitte ausführen
Der Editor VS Code
Python auf verschiedenen Betriebssystemen
Python unter Windows
Python unter macOS
Python unter Linux
Das Hello-World-Programm ausführen
Die Python-Erweiterung für VS Code installieren
Hello_world.py ausführen
Fehlersuche
Python-Programme im Terminal ausführen
Unter Windows
Unter Linux und macOS
Zusammenfassung
2Variablen und einfache Datentypen
Was bei der Ausführung von hello_world.py wirklich geschieht
Variablen
Variablen benennen und verwenden
Fehler bei Variablennamen vermeiden
Variablen sind Etiketten
Strings
Groß- und Kleinschreibung mithilfe von Methoden ändern
Variablen in Strings verwenden
Weißraum hinzufügen
Weißraum entfernen
Entfernen von Präfixen
Syntaxfehler bei der Stringverarbeitung vermeiden
Zahlen
Integer
Fließkommazahlen
Integer und Fließkommazahlen
Unterstriche in Zahlen
Mehrfachzuweisung
Konstanten
Kommentare
Wie werden Kommentare geschrieben?
Was für Kommentare sind sinnvoll?
The Zen of Python
Zusammenfassung
3Eine Einführung in Listen
Was sind Listen?
Elemente in einer Liste ansprechen
Indizes beginnen bei 0, nicht bei 1
Einzelne Werte aus einer Liste verwenden
Elemente verändern, hinzufügen und entfernen
Elemente in einer Liste ändern
Elemente zu einer Liste hinzufügen
Elemente aus einer Liste entfernen
Listen ordnen
Listen mit sort() dauerhaft sortieren
Listen mit der Funktion sorted() vorübergehend sortieren
Listen in umgekehrter Reihenfolge ausgeben
Die Länge einer Liste ermitteln
Indexfehler vermeiden
Zusammenfassung
4Mit Listen arbeiten
Eine komplette Liste durchlaufen
Die Schleife im Detail
Weitere Aufgaben in einer for-Schleife erledigen
Aktionen nach der for-Schleife
Einrückungsfehler vermeiden
Vergessene Einrückung der ersten Zeile in einer Schleife
Vergessene Einrückung nachfolgender Zeilen
Unnötige Einrückung
Unnötige Einrückung nach einer Schleife
Vergessener Doppelpunkt
Numerische Listen
Die Funktion range()
Numerische Listen mithilfe von range() aufstellen
Einfache Statistiken für numerische Listen
Listennotation
Teillisten
Einen Slice erstellen
Einen Slice in einer Schleife durchlaufen
Listen kopieren
Tupel
Ein Tupel definieren
Die Werte in einem Tupel durchlaufen
Tupel überschreiben
Code formatieren
Die Gestaltungsrichtlinien
Einrückung
Zeilenlänge
Leerzeilen
Zusammenfassung
5if-Anweisungen
Ein einfaches Beispiel
Bedingungen
Prüfung auf Gleichheit
Groß- und Kleinschreibung bei der Prüfung auf Gleichheit
Prüfung auf Ungleichheit
Numerische Vergleiche
Prüfung auf mehrere Bedingungen
Prüfung auf Vorhandensein eines Werts in einer Liste
Prüfung auf Abwesenheit eines Werts in einer Liste
Boolesche Ausdrücke
if-Anweisungen
Einfache if-Anweisungen
if-else-Anweisungen
Die if-elif-else-Kette
Mehrere elif-Blöcke
Den else-Block weglassen
Mehrere Bedingungen prüfen
if-Anweisungen für Listen
Prüfung auf besondere Elemente
Prüfung auf nicht leere Liste
Mehrere Listen verwenden
if-Anweisungen gestalten
Zusammenfassung
6Dictionaries
Ein einfaches Dictionary
Umgang mit Dictionaries
Zugriff auf die Werte in einem Dictionary
Schlüssel-Wert-Paare hinzufügen
Ein leeres Dictionary als Ausgangspunkt
Werte in einem Dictionary ändern
Schlüssel-Wert-Paare entfernen
Ein Dictionary aus ähnlichen Objekten
Mit get() auf Werte zugreifen
Dictionaries in einer Schleife durchlaufen
Alle Schlüssel-Wert-Paare durchlaufen
Alle Schlüssel in einem Dictionary durchlaufen
Die Schlüssel in einem Dictionary geordnet durchlaufen
Alle Werte in einem Dictionary durchlaufen
Verschachtelung
Dictionaries in einer Liste
Listen in einem Dictionary
Dictionaries in einem Dictionary
7Benutzereingaben und while-Schleifen
Die Funktion input()
Klar verständliche Eingabeaufforderungen schreiben
Verwendung von int() für numerische Eingaben
Der Modulo-Operator
while-Schleifen
while-Schleifen in Aktion
Programmbeendigung durch den Benutzer
Flags
Eine Schleife mit break verlassen
Die Anweisung continue
Endlosschleifen vermeiden
while-Schleifen für Listen und Dictionaries
Elemente von einer Liste in eine andere verschieben
Alle Vorkommen eines Wertes aus einer Liste entfernen
Ein Dictionary mit Benutzereingaben füllen
Zusammenfassung
8Funktionen
Funktionen definieren
Informationen an eine Funktion übergeben
Argumente und Parameter
Argumente übergeben
Positionsabhängige Argumente
Schlüsselwortargumente
Standardwerte
Verschiedene Formen für Funktionsaufrufe
Argumentfehler vermeiden
Rückgabewerte
Einen einfachen Wert zurückgeben
Optionale Argumente
Ein Dictionary zurückgeben
Funktionen in einer while-Schleife
Eine Liste übergeben
Eine Liste mithilfe einer Funktion ändern
Die Änderung einer Liste in einer Funktion verhindern
Beliebig viele Argumente übergeben
Positionsabhängige Argumente und Argumente beliebiger Anzahl kombinieren
Beliebig viele Schlüsselwortargumente übergeben
Funktionen in Modulen speichern
Ein komplettes Modul importieren
Einzelne Funktionen importieren
Eine Funktion mit »as« umbenennen
Ein Modul mit »as« umbenennen
Alle Funktionen eines Moduls importieren
Gestaltung von Funktionen
Zusammenfassung
9Klassen
Eine Klasse erstellen und verwenden
Die Klasse Dog erstellen
Eine Instanz einer Klasse anlegen
Mit Klassen und Instanzen arbeiten
Die Klasse Car
Einen Standardwert für ein Attribut festlegen
Attributwerte bearbeiten
Vererbung
Die Methode __init__() für eine Kindklasse
Attribute und Methoden der Kindklasse definieren
Methoden der Elternklasse überschreiben
Instanzen als Attribute
Reale Objekte modellieren
Klassen importieren
Eine einzelne Klasse importieren
Mehrere Klassen in einem Modul speichern
Mehrere Klassen aus einem Modul importieren
Ein gesamtes Modul importieren
Alle Klassen eines Moduls importieren
Ein Modul in ein Modul importieren
Aliase verwenden
Ihren eigenen Arbeitsablauf finden
Die Standardbibliothek von Python
Gestaltung von Klassen
Zusammenfassung
10Dateien und Ausnahmen
Aus Dateien lesen
Den Inhalt einer Datei lesen
Relative und absolute Dateipfade
Lesen der Zeilen einer Datei
Dateiinhalte verarbeiten
Große Dateien: eine Million Stellen
Ist Ihr Geburtsdatum in Pi enthalten?
In Dateien schreiben
Eine einzelne Zeile schreiben
Mehrere Zeilen schreiben
Ausnahmen
Division durch null
try-except-Blöcke
Abstürze mithilfe von Ausnahmen verhindern
Der else-Block
Datei nicht gefunden
Text analysieren
Umgang mit mehreren Dateien
Fehler stillschweigend übergehen
Welche Fehler sollten Sie melden und welche nicht?
Daten speichern
json.dump() und json.load()
Benutzergenerierte Daten speichern und lesen
Refactoring
Zusammenfassung
11Code testen
Pytest mit pip installieren
pip aktualisieren
Pytest installieren
Funktionen testen
Unit-Tests und Testfälle
Ein bestandener Test
Ein nicht bestandener Test
Was tun bei einem nicht bestandenen Test?
Neue Tests hinzufügen
Klassen testen
Verschiedene Annahmen
Eine Beispielklasse zum Testen
Die Klasse AnonymousSurvey testen
Verwenden von Fixtures
Zusammenfassung
Teil 2Projekte
Alien Invasion – ein Python-Spiel
Datenvisualisierung
Webanwendungen
Projekt 1:Alien Invasion
12Das eigene Kampfschiff
Das Projekt planen
Pygame installieren
Erste Schritte für das Spielprojekt
Ein Pygame-Fenster anlegen und auf Benutzereingaben reagieren
Steuerung der Framerate
Die Hintergrundfarbe festlegen
Eine Klasse für Einstellungen anlegen
Das Bild eines Raumschiffs hinzufügen
Die Klasse Ship
Das Schiff auf den Bildschirm zeichnen
Refactoring: Die Methoden _check_events() und _update_screen()
Die Methode _check_events()
Die Methode _update_screen()
Das Schiff bewegen
Auf Tastenbetätigungen reagieren
Kontinuierliche Bewegung
Bewegung nach rechts und links
Die Geschwindigkeit des Schiffes anpassen
Den Bewegungsbereich des Schiffes einschränken
Refactoring von _check_events()
Beenden mit Q
Das Spiel im Vollbildmodus ausführen
Zwischenstand
alien_invasion.py
settings.py
ship.py
Geschosse
Einstellungen für Geschosse hinzufügen
Die Klasse Bullet
Geschosse in Gruppen speichern
Geschosse abfeuern
Alte Geschosse löschen
Die Anzahl der Geschosse begrenzen
Die Methode _update_bullets()
Zusammenfassung
13Die Außerirdischen
Überblick über das Projekt
Das erste Invasionsschiff
Die Klasse Alien
Eine Instanz von Alien erstellen
Die Invasionsflotte erstellen
Reihen von Invasionsschiffen erstellen
Refactoring von _create_fleet()
Reihen hinzufügen
Die Flotte in Bewegung setzen
Die Invasoren nach rechts bewegen
Einstellungen für die Flugrichtung der Flotte
Auf Randberührungen prüfen
Sinken und Flugrichtung ändern
Invasoren abschießen
Kollisionen von Geschossen erkennen
Größere Geschosse zu Testzwecken
Die Flotte auffüllen
Die Geschosse beschleunigen
Refactoring von _update_bullets()
Spielende
Kollisionen zwischen Invasoren und dem eigenen Schiff erkennen
Auf Kollisionen zwischen Invasoren und dem eigenen Schiff reagieren
Wenn Invasoren den unteren Bildschirmrand erreichen
Game over!
Welche Teile des Spiels müssen ausgeführt werden?
Zusammenfassung
14Das Wertungssystem
Eine Play-Schaltfläche hinzufügen
Die Klasse Button
Die Schaltfläche auf den Bildschirm zeichnen
Das Spiel starten
Das Spiel zurücksetzen
Die Play-Schaltfläche deaktivieren
Den Mauszeiger ausblenden
Levels
Die Geschwindigkeitseinstellungen ändern
Die Geschwindigkeit zurücksetzen
Die Punktwertung
Den Punktestand anzeigen
Eine Anzeigetafel erstellen
Den Punktestand bei jedem Abschuss erhöhen
Den Punktestand zurücksetzen
Alle Treffer berücksichtigen
Den Punktwert erhöhen
Den Punktestand runden
Highscore
Das Level anzeigen
Die Anzahl der verfügbaren Schiffe anzeigen
Zusammenfassung
Projekt 2:Datenvisualisierung
15Daten generieren
Matplotlib installieren
Einfache Liniendiagramme
Beschriftung und Linienstärke ändern
Das Diagramm korrigieren
Vordefinierte Formatierungen verwenden
Einzelne Punkte mit scatter() darstellen und gestalten
Eine Folge von Punkten mit scatter() ausgeben
Daten automatisch berechnen
Eigene Beschriftungen anlegen
Eigene Farben festlegen
Eine Colormap verwenden
Diagramme automatisch speichern
Zufallsbewegungen
Die Klasse RandomWalk
Richtungen wählen
Den Zufallspfad als Diagramm ausgeben
Mehrere Zufallspfade erstellen
Den Pfad gestalten
Würfeln mit Plotly
Plotly installieren
Die Klasse Die
Würfeln
Die Ergebnisse analysieren
Ein Histogramm erstellen
Das Diagramm anpassen
Ergebnisse bei zwei Würfeln
Weitere Anpassungen
Würfel unterschiedlicher Flächenzahl
Diagramme speichern
Zusammenfassung
16Daten herunterladen
Das Dateiformat CSV
CSV-Spaltenköpfe analysieren
Die Spaltenköpfe und ihre Position ausgeben
Daten entnehmen und lesen
Daten in einem Temperaturdiagramm darstellen
Das Modul datetime
Datumsangaben im Diagramm darstellen
Ein Diagramm für einen längeren Zeitraum
Eine zweite Datenreihe darstellen
Einen Diagrammbereich einfärben
Fehlerprüfung
Daten selbst herunterladen
Globale Daten im GeoJSON-Format visualisieren
Erdbebendaten herunterladen
JSON-Daten untersuchen
Eine Liste aller Erdbeben aufstellen
Die Stärken entnehmen
Ortsdaten entnehmen
Eine Weltkarte zeichnen
Darstellung der Stärke
Die Farben der Markierungen anpassen
Weitere Farbpaletten
Maustext hinzufügen
Zusammenfassung
17APIs
APIs
Git und GitHub
Daten mithilfe eines API-Aufrufs anfordern
Das Paket requests installieren
API-Antworten verarbeiten
Das Antwort-Dictionary verarbeiten
Ein Überblick über die höchstbewerteten Repositories
Grenzwerte für die API-Aufrufrate
Angaben zu Repositories mit Plotly visualisieren
Das Diagramm gestalten
Eigenen Maustext hinzufügen
Links zu dem Diagramm hinzufügen
Marker-Farben anpassen
Mehr über Plotly und die GitHub-API
Die API von Hacker News
Zusammenfassung
Projekt 3:Webanwendungen
18Erste Schritte mit Django
Ein Projekt einrichten
Eine Spezifikation schreiben
Eine virtuelle Umgebung erstellen
Die virtuelle Umgebung aktivieren
Django installieren
Ein Projekt in Django erstellen
Die Datenbank erstellen
Das Projekt anzeigen
Eine App anlegen
Modelle definieren
Modelle aktivieren
Die Admin-Site von Django
Das Modell für die Einträge definieren
Das Modell Entry in die Datenbank aufnehmen
Das Modell Entry auf der Admin-Site registrieren
Die Django-Shell
Seiten erstellen: die Startseite von Learning Log
Eine URL zuordnen
Eine Ansicht schreiben
Eine Vorlage schreiben
Weitere Seiten erstellen
Vererbung bei Vorlagen
Die Seite Topics
Einzelne Fachgebietsseiten
Zusammenfassung
19Benutzerkonten
Dateneingabe durch die Benutzer
Neue Fachgebiete hinzufügen
Neue Einträge hinzufügen
Einträge bearbeiten
Benutzerkonten einrichten
Die App accounts
Die Anmeldeseite
Abmelden
Die Registrierungsseite
Die Benutzer als Besitzer ihrer eigenen Daten
Den Zugriff mit @login_required beschränken
Daten mit Benutzern verknüpfen
Den Zugriff auf die Fachgebiete auf die zuständigen Benutzer einschränken
Die Fachgebiete eines Benutzers schützen
Die Seite edit_entry schützen
Neue Fachgebiete dem aktuellen Benutzer zuordnen
Zusammenfassung
20Eine App gestalten und bereitstellen
Learning Log gestalten
Die App django-bootstrap5
Learning Log mit Bootstrap gestalten
Änderungen an base.html
Die Startseite mit einem Jumbotron gestalten
Das Anmeldeformular gestalten
Die Seite Topics gestalten
Einträge auf den Fachgebietsseiten gestalten
Learning Log bereitstellen
Ein Platform.sh-Konto anlegen
Die Platform.sh-Befehlszeile installieren
Platformsshconfig installieren
Die Datei requirements.txt erstellen
Zusätzliche Voraussetzungen für die Bereitstellung
Konfigurationsdateien hinzufügen
Die Konfigurationsdatei services-yaml
settings-py für Platform.sh anpassen
Mit Git den Überblick über die Projektdateien bewahren
Die Platform.sh-Bereitstellung verbessern
Das Onlineprojekt schützen
Änderungen mit Commit bestätigen und übertragen
Eigene Fehlerseiten erstellen
Weiterentwicklung des Projekts
Projekte auf Platform.sh löschen
Zusammenfassung
Nachwort
Anhang
AInstallation und Fehlerbehebung
Python unter Windows
Py statt Python
Das Installationsprogramm erneut ausführen
Python unter macOS
Versehentliches Installieren der Apple-Version von Python
Python 2 und ältere Versionen von macOS
Python unter Linux
Die Standardinstallation vornehmen
Die letzte Python-Version installieren
Die verwendete Python-Version herausfinden
Schlüsselwörter und integrierte Funktionen
Python-Schlüsselwörter
Integrierte Python-Funktionen
BTexteditoren und IDEs
Effizient mit VS Code arbeiten
VS Code konfigurieren
Tabulatoren und Leerzeichen verwenden
Das Farbschema ändern
Den Zeilenlängenmarker festlegen
Die Ausgabe vereinfachen
Kurzbefehle in VS Code
Codeblöcke einrücken und Einrückungen aufheben
Codeblöcke auskommentieren
Weitere Texteditoren und IDEs
IDLE
Geany
Sublime Text
Emacs und Vim
PyCharm
Jupyter Notebooks
CHilfe finden
Erste Schritte
Versuchen Sie es erneut
Legen Sie eine Pause ein
Nutzen Sie das Onlinematerial zu diesem Buch
Online nach Hilfe suchen
Stack Overflow
Die offizielle Python-Dokumentation
Offizielle Dokumentation der Bibliotheken
r/learnpython
Blogs
Discord
Slack
DVersionssteuerung mit Git
Git installieren
Git konfigurieren
Ein Projekt anlegen
Dateien ignorieren
Ein Repository initialisieren
Den Projektstatus überprüfen
Dateien zum Repository hinzufügen
Einen Commit durchführen
Das Protokoll einsehen
Der zweite Commit
Änderungen zurücknehmen
Vorherige Commits auschecken
Das Repository löschen
EFehlerbehebung bei der Bereitstellung
Git installieren
Grundlgegende Fehlersuche
Den Hinweisen nachgehen
Das Protokoll analysieren
Betriebssystemspezifische Fehlersuche
Von Windows bereitstellen
Weitere Entwicklungsansätze
Stichwortverzeichnis
Für meinen Vater, der sich immer Zeit genommen hat, meine Fragen über Programmierung zu beantworten, und für Ever, der gerade anfängt, mir seine Fragen zu stellen.
Eric Matthes ist High-School-Lehrer für Naturwissenschaften und Mathematik in Alaska und gibt dort auch Einführungskurse in Python. Programme schreibt er seit dem Alter von fünf Jahren. Zurzeit konzentriert er sich darauf, Software zu entwickeln, die Lernverfahren effizienter machen soll und die Vorteile von Open-Source-Programmen auf den Bildungsbereich überträgt. Seine Freizeit verbringt er mit Klettern und mit seiner Familie.
Kenneth Love arbeitet schon seit vielen Jahren als Python-Programmierer, Lehrer und Organisator von Konferenzen. Er ist auf vielen Konferenzen als Redner und Lehrer aufgetreten und war selbstständig tätig als Python- und Django-Programmierer. Zurzeit arbeitet er als Softwareingenieur für O’Reilly Media. Außerdem gehört er zu den Urhebern des Pakets django-braces, das mehrere praktische Mixins für die klassengestützten Ansichten in Django bietet. Auf Twitter können Sie ihm als @kennethlove folgen.
Dieses Buch wäre ohne die wunderbaren und äußerst professionellen Mitarbeiter von No Starch Press nicht möglich gewesen. Bill Pollock hat mich eingeladen, ein Einführungsbuch zu schreiben, und ich bin ihm für dieses einmalige Angebot sehr dankbar. Liz Chadwick hat an allen drei Ausgaben mitgearbeitet, und das Buch ist durch ihre ständige Mitarbeit noch besser geworden. Eva Morrow brachte frischen Wind in diese neue Ausgabe, und auch ihre Erkenntnisse haben das Buch verbessert. Ich schätze Doug McNairs Hinweise zur Verwendung einer korrekten Grammatik, ohne dabei zu formell zu werden. Jennifer Kepler hat die Produktionsarbeiten überwacht, die aus meinen vielen Dateien ein tolles Buch haben werden lassen.
Es gibt viele Menschen bei No Starch Press, die zum Erfolg dieses Buches beigetragen haben, mit denen ich aber nicht direkt zusammenarbeiten konnte. No Starch hat ein fantastisches Marketingteam, das sich nicht nur mit dem Verkauf von Büchern befasst, sondern auch dafür sorgt, dass die Leser die Bücher finden, die für sie geeignet sind und die ihnen helfen, ihre Ziele zu erreichen. No Starch verfügt auch über eine starke Abteilung für Lizenzen. Der Python-Crashkurs hat dank des Engagements dieses Teams Leser auf der ganzen Welt und in vielen Sprachen erreicht. All diesen Menschen, mit denen ich nicht einzeln zusammengearbeitet habe, danke ich dafür, dass sie dem Python-Crashkurs geholfen haben, sein Publikum zu finden.
Ich möchte mich bei Kenneth Love bedanken, dem technischen Gutachter für alle drei Ausgaben des Python-Crashkurses. Ich habe Kenneth auf der PyCon kennengelernt, und der Enthusiasmus dort für die Sprache und die Python-Gemeinschaft ist seither eine beständige Quelle der beruflichen Inspiration. Wie immer ging Kenneth über die reine Überprüfung von Fakten hinaus und begutachtete das Buch mit dem Ziel, Programmieranfängern zu helfen, ein solides Verständnis der Sprache Python und der Programmierung im Allgemeinen zu entwickeln. Außerdem hat er ein Auge auf Bereiche geworfen, die in früheren Ausgaben gut waren, die aber verbessert werden könnten, wenn man die Gelegenheit hätte, das Buch noch einmal komplett zu überarbeiten. Das heißt, dass alle Ungenauigkeiten, die verbleiben, vollständig meine eigenen sind.
Ich möchte auch allen Lesern danken, die ihre Erfahrungen mit dem Python-Crashkurs geteilt haben. Wenn man die Grundlagen des Programmierens lernt, kann das die Sicht auf die Welt verändern, und manchmal hat das einen tiefgreifenden Einfluss auf die Menschen. Es ist zutiefst bewegend, diese Geschichten zu hören, und ich danke allen, die ihre Erfahrungen so offen geteilt haben. Ich möchte meinem Vater dafür danken, dass er mich schon in jungen Jahren an das Programmieren herangeführt hat und keine Angst hatte, dass ich seine Geräte kaputt machen könnte. Ich möchte meiner Frau Erin dafür danken, dass sie mich beim Schreiben dieses Buches unterstützt und ermutigt hat, und für all die Arbeit, die nötig ist, um es über mehrere Auflagen hinweg zu pflegen. Ich möchte auch meinem Sohn Ever danken, dessen Neugierde mich immer wieder inspiriert.
Die Reaktion auf die zweite Auflage von Python Crashkurs war überwältigend positiv. Es wurden einschließlich der Übersetzungen in über 10 Sprachen mehr als eine Million Exemplare gedruckt. Ich erhielt Briefe und E-Mails von Lesern, sowohl von Zehnjährigen als auch von Rentnern, die in ihrer Freizeit programmieren lernen möchten. Python Crashkurs wird im Sekundarstufenunterricht, aber auch in Hochschulkursen eingesetzt. Studenten, an die anspruchsvollere Lehrbücher ausgeteilt wurden, haben Python Crashkurs als ergänzenden Text für ihren Kurs benutzt und waren sehr zufrieden damit. Das Buch wird verwendet, um die Programmierfähigkeit für den Beruf zu verbessern, umzusteigen und um an Privatprojekten zu arbeiten. Kurzum, es wird so vielfältig genutzt, wie ich es mir gewünscht habe.
Es war überaus erfreulich, eine dritte Auflage von Python Crashkurs zu schreiben. Auch wenn Python eine ausgereifte Sprache ist, entwickelt sie sich wie jede andere Sprache weiter. Mein Hauptziel bei der Überarbeitung des Buches war es, einen gut zusammengestellten Python-Einführungskurs zu bieten. Durch die Lektüre dieses Buches lernen Sie alles, was Sie brauchen, um mit der Arbeit an Ihren eigenen Projekten zu beginnen, und Sie werden eine solide Grundlage für all Ihre zukünftigen Fortschritte schaffen. Ich habe einige Abschnitte auf den neuesten Stand gebracht, um neue, einfachere Möglichkeiten darzustellen, die es jetzt zur Erledigung von Aufgaben in Python gibt. Außerdem habe ich einige Abschnitte deutlicher formuliert, in denen Aspekte der Sprache nicht klar genug dargestellt wurden. Alle Projekte wurden unter Zuhilfenahme weitverbreiteter, gut gepflegter Bibliotheken komplett überarbeitet, die Sie auch vertrauensvoll für Ihre eigenen Projekte einsetzen können.
Der folgende Überblick führt besondere Änderungen auf, die ich in dieser dritten Auflage vorgenommen habe:
Kapitel 1
enthält jetzt den Texteditor VS Code, der bei Anfängern und professionellen Programmierern beliebt ist und auf allen Betriebssystemen problemlos funktioniert.
Kapitel 2
enthält die neuen Methoden
removeprefix()
und
removesuffix()
, die bei der Arbeit mit Dateien und URLs hilfreich sind. In diesem Kapitel finden Sie auch die neuen, verbesserten Fehlermeldungen von Python, die Ihnen bei der Fehlersuche in Ihrem Code helfen, wenn etwas schiefläuft.
Kapitel 10
verwendet das Modul
pathlib
für die Arbeit mit Dateien. Dies ist ein viel einfacherer Ansatz zum Lesen aus und Schreiben in Dateien.
Kapitel 11
verwendet
pytest
, um automatisierte Tests für den von Ihnen geschriebenen Code zu schreiben. Die
pytest
-Bibliothek hat sich zum Standardwerkzeug für das Schreiben von Tests in Python entwickelt. Sie ist so benutzerfreundlich, dass Sie sie für Ihre ersten Tests verwenden können; und wenn Sie eine Karriere als Python-Programmierer anstreben, werden Sie sie auch im professionellen Umfeld einsetzen.
Das Projekt
Alien Invasion
in den
Kapiteln 12
–
14
enthält eine Einstellung zur Steuerung der Bildwiederholrate, die dafür sorgt, dass das Spiel auf verschiedenen Betriebssystemen gleichmäßig läuft. Für den Aufbau der Alien-Flotte wird ein einfacherer Ansatz verwendet, und auch die Gesamtorganisation des Projekts wurde aufgeräumt.
Die Datenvisualisierungsprojekte in den
Kapiteln 15
–
17
verwenden die neuesten Funktionen von Matplotlib und Plotly. Die Matplotlib-Visualisierungen verfügen über aktualisierte Style-Einstellungen. Das Random-Walk-Projekt weist eine kleine Verbesserung auf, die die Genauigkeit der Diagramme erhöht, was bedeutet, dass Sie bei jedem neuen Durchlauf eine größere Vielfalt an Mustern sehen. Alle Projekte mit Plotly verwenden jetzt das Modul Plotly Express, mit dem Sie Ihre ersten Visualisierungen mit nur wenigen Zeilen Code erstellen können. Sie können ganz einfach eine Vielzahl von Visualisierungen ausprobieren, bevor Sie sich auf eine Art von Plot festlegen, und sich dann auf die Verfeinerung einzelner Elemente dieses Plots konzentrieren.
Das Projekt Learning Log in den
Kapiteln 18
–
20
wurde mit der neuesten Version von Django erstellt und mit der neuesten Version von Bootstrap gestylt. Einige Teile des Projekts wurden umbenannt, um die Gesamtorganisation des Projekts leichter nachvollziehen zu können. Das Projekt wird jetzt auf
Platform.sh
bereitgestellt, einem modernen Hosting-Service für Django-Projekte. Der Bereitstellungsprozess wird durch YAML-Konfigurationsdateien gesteuert, die Ihnen eine große Gestaltungsfreiheit geben, wie Ihr Projekt bereitgestellt wird. Dieser Ansatz steht im Einklang mit der Art und Weise, wie professionelle Programmierer moderne Django-Projekte bereitstellen.
Anhang A
wurde vollständig aktualisiert, um aktuelle Methoden für die Installation von Python auf allen wichtigen Betriebssystemen zu empfehlen.
Anhang B
enthält eine detaillierte Anleitung zum Einrichten von VS Code und kurze Beschreibungen der wichtigsten Texteditoren und IDEs, die derzeit verwendet werden.
Anhang C
verweist die Leser auf einige der beliebtesten Onlineressourcen, um Hilfe zu erhalten.
Anhang D
bietet weiterhin einen Mini-Crashkurs in der Verwendung von Git für die Versionskontrolle.
Anhang E
ist ganz neu in der dritten Auflage. Selbst mit einer guten Anleitung für die Bereitstellung der von Ihnen erstellten Anwendungen können viele Dinge schiefgehen. Dieser
Anhang
bietet eine detaillierte Anleitung zur Fehlerbehebung, die Sie verwenden können, wenn der Bereitstellungsprozess nicht auf Anhieb funktioniert. Der Index wurde gründlich überarbeitet und ermöglicht es Ihnen, dieses Buch auch als Nachschlagewerk für Ihre zukünftigen Python-Projekte zu verwenden.
Vielen Dank dafür, dass Sie Python Crashkurs lesen! Wenn Sie irgendwelche Rückmeldungen oder Fragen an mich haben, können Sie sich gern an mich wenden, auf Twitter bin ich @ehmatthes.
Jeder Programmierer kann Ihnen erzählen, wie er gelernt hat zu programmieren und sein erstes Programm geschrieben hat. Ich habe als Kind damit angefangen, als mein Vater für die Digital Equipment Corporation arbeitete, einem der bahnbrechenden Unternehmen des modernen Computerzeitalters. Mein erstes Programm schrieb ich auf einem Computer aus einem Bausatz, den mein Vater im Keller zusammengebastelt hatte. Er bestand lediglich aus einem nackten Motherboard mit einer Tastatur und einer Bildröhre als Monitor. Mein erstes Programm war ein einfaches Zahlenratespiel, das wie folgt ablief:
Ich habe mir eine Zahl ausgedacht! Versuche sie zu erraten: 25
Zu niedrig! Versuche es noch einmal: 50
Zu hoch! Versuche es noch einmal: 42
Richtig! Möchtest du noch einmal spielen? (ja/nein) nein
Danke fürs Spielen!
Ich werde nie vergessen, wie stolz ich war, dass meine Familie ein Spiel spielte, das ich selbst geschrieben hatte und das tatsächlich so funktionierte wie beabsichtigt.
Diese erste Erfahrung hatte eine bleibende Wirkung auf mich. Es ist sehr befriedigend, etwas zu erschaffen, das einen Zweck erfüllt oder ein Problem löst. Heute schreibe ich Software, die wichtigere Bedürfnisse erfüllt als mein Programm aus Kindertagen, aber die Befriedigung, die ich daraus gewinne, ist immer noch die gleiche.
Dieses Buch soll Sie so schnell wie möglich mit Python vertraut machen, sodass Sie eigene Programme schreiben können – beispielsweise Spiele, Datenvisualisierungen und Webanwendungen –, es soll Ihnen aber außerdem auch Grundkenntnisse in Programmierung vermitteln, die Ihnen bei der Verwendung anderer Sprachen von Nutzen sind. Es richtet sich an Leser aller Altersgruppen, die noch nie in Python oder überhaupt noch nie programmiert haben. Wenn Sie die Grundlagen der Programmierung schnell erlernen wollen, sodass Sie sich interessanten Projekten zuwenden können, und wenn Sie Ihre neu erworbenen Kenntnisse an praxisnahen Problemen erproben wollen, so ist dies das richtige Buch für Sie. Es ist auch ideal für Lehrer der Sekundarstufe geeignet, die ihren Schülern eine projektbezogene Einführung in die Programmierung geben wollen. Wenn Sie einen Hochschulkurs besuchen und sich eine benutzerfreundlichere Einführung in Python wünschen als mit den dort behandelten Texten, kann Ihnen dieses Buch auch helfen, in diesem Kurs besser zurechtzukommen. Wenn Sie sich beruflich verändern wollen, kann Ihnen der Python-Crashkurs helfen, den Wechsel zu einer erfüllenderen beruflichen Laufbahn zu vollziehen. Er hat sich für eine Vielzahl von Lesern mit den unterschiedlichsten Zielen bewährt.
Dieses Buch soll Sie zu einem guten Programmierer im Allgemeinen und zu einem guten Python-Programmierer im Besonderen machen. Während ich Ihnen eine solide Grundlage in allgemeinen Programmierprinzipien gebe, eignen Sie sich auch gute Programmiergewohnheiten an. Nachdem Sie dieses Buch durchgearbeitet haben, sind Sie bereit, sich fortgeschrittenen Python-Techniken zuzuwenden, und können auch andere Programmiersprachen leichter erlernen.
Im ersten Teil dieses Buches lernen Sie grundlegende Programmierprinzipien kennen und erfahren, wie Sie Python-Programme schreiben. Diese Prinzipien sind die gleichen, die Sie auch bei fast allen anderen Programmiersprachen befolgen müssen. Sie lernen, welche verschiedenen Arten von Daten es gibt, wie Sie sie in Listen und Dictionaries speichern und wie Sie solche Zusammenstellungen von Daten rationell abarbeiten. Außerdem erfahren Sie, wie Sie mit while-Schleifen und if-Anweisungen dafür sorgen, dass je nachdem, welche Umstände vorliegen, unterschiedliche Codeblöcke ausgeführt werden, was eine wichtige Grundlage für die Automatisierung von Vorgängen ist.
Sie lernen, wie Sie Eingaben von Benutzern entgegennehmen, um Ihre Programme interaktiv zu machen; wie Sie die Programme so lange am Laufen halten, wie der Benutzer es wünscht; wie Sie Funktionen erstellen, um Teile Ihrer Programme wiederverwenden zu können, sodass Sie einen Codeblock für eine bestimmte Funktion nur einmal schreiben müssen und dann so oft ausführen können, wie Sie wollen; wie Sie dieses Prinzip mithilfe von Klassen auf komplexere Verhaltensweisen ausdehnen, sodass relativ einfache Programme auf viele verschiedene Situationen reagieren können; und wie Sie dafür sorgen, dass Ihre Programme mit auftretenden Fehlern umgehen können. Nachdem Sie all diese Grundlagen gründlich durchgearbeitet haben, schreiben Sie in der Komplexität gesteigerte Programme, die auf dem Gelernten aufbauen. Schließlich unternehmen Sie auch einen ersten Schritt auf dem Weg zum fortgeschrittenen Anfänger, indem Sie Tests für Ihren Code schreiben, sodass Sie Ihre Programme weiterentwickeln können, ohne befürchten zu müssen, dabei Fehler einzuführen. Alles, was Sie in Teil I lernen, bereitet Sie darauf vor, umfangreiche, anspruchsvolle Projekte durchzuführen.
In Teil II wenden Sie das, was Sie in Teil I gelernt haben, in drei großen Projekten an. Sie können diese Projekte in der Reihenfolge angehen, die Ihnen am besten liegt. Im ersten Projekt (Kapitel 12 bis 14) erstellen Sie ein stark an Space Invaders angelehntes Ballerspiel namens Alien Invasion mit Levels von immer höherem Schwierigkeitsgrad. Wenn Sie dieses Projekt durchgearbeitet haben, sind Sie gut gerüstet, um eigene 2D-Spiele zu entwickeln. Auch wenn Sie nicht vorhaben, Spieleprogrammierer zu werden, ist die Arbeit an diesem Projekt eine unterhaltsame Möglichkeit, vieles von dem, was Sie in Teil I gelernt haben, zu vertiefen.
Im zweiten Projekt (Kapitel 15 bis 17) geht es um Datenvisualisierung. Datenforscher versuchen mittels verschiedenster Visualisierungsverfahren, die Unmengen an Informationen, die ihnen zur Verfügung stehen, zu deuten. In diesen Kapiteln arbeiten Sie mit Datenmengen, die Sie durch Code erzeugen, aus Onlinequellen herunterladen oder automatisch von Ihren Programmen herunterladen lassen. Nachdem Sie dieses Projekt durchgearbeitet haben, können Sie eigene Programme schreiben, die große Datenmengen durchforsten und grafische Darstellungen der unterschiedlichsten darin gespeicherten Informationen erstellen.
Im dritten Projekt (Kapitel 18 bis 20) richten Sie eine kleine Webanwendung namens Learning Log ein, mit der es möglich ist, ein organisiertes Tagebuch mit Informationen über Erlerntes zu einem bestimmten Thema zu führen. Sie erfahren hier, wie Sie getrennte Tagebücher für unterschiedliche Fachgebiete führen und wie Sie anderen Benutzern gestatten, ein Konto anzulegen und ihre eigenen Tagebücher zu schreiben. Außerdem lernen Sie, das Projekt öffentlich bereitzustellen, sodass es überall online zugänglich ist.
No Starch Press bietet weitere Informationen zu diesem Buch online unter https://nostarch.com/python-crash-course-3rd-edition an. Ich unterhalte auch eine umfangreiche Sammlung von ergänzenden Ressourcen unter https://ehmatthes.github.io/pcc_3e. Zu diesen Ressourcen gehören die folgenden:
Anleitungen zur EinrichtungDiese Onlineanleitungen sind identisch mit denjenigen in diesem Buch, enthalten aber Links zu allen einzelnen Teilen. Schauen Sie hier nach, wenn Sie Probleme bei der Einrichtung haben.
AktualisierungenPython wird ebenso wie andere Sprachen ständig weiterentwickelt. Ich pflege einen umfangreichen Satz von Aktualisierungen. Sollte also irgendwelcher Code nicht funktionieren, so schauen Sie hier nach, ob sich Anweisungen geändert haben.
Lösungen zu den ÜbungenWenn Sie sich an den Übungen in den Abschnitten mit dem Titel »Probieren Sie es selbst aus!« versuchen, sollten Sie sich zunächst ausreichend Zeit nehmen, um sie selbstständig zu bearbeiten. Sollten Sie aber wirklich nicht mehr weiterwissen, können Sie zu den meisten dieser Übungen Lösungen online nachschlagen.
SpickzettelAuch ein ganzer Satz von Spickzetteln zum Herunterladen steht online zur Verfügung. Sie sind zum schnellen Nachschlagen aller wichtigen Prinzipien geeignet.
Jedes Jahr überlege ich, ob ich weiterhin Python verwenden oder auf eine andere Programmiersprache umsteigen soll, vielleicht eine neuere, bleibe aber jedes Mal bei Python, und das aus vielen Gründen. Python ist eine unglaublich effiziente Sprache: Python-Programme können in weniger Zeilen mehr erledigen, als das bei anderen Programmiersprachen der Fall ist. Die Syntax von Python hilft Ihnen auch, »sauberen« Code zu schreiben, der sich leicht lesen, leicht korrigieren und leicht erweitern lässt.
Python wird für viele Zwecke eingesetzt: für Spiele, für Webanwendungen, zum Lösen von Problemen in der Geschäftswelt und zur Entwicklung interner Werkzeuge für alle möglichen Arten von Unternehmen. Auch in Wissenschaft und Forschung ist Python stark vertreten.
Einer der wichtigsten Gründe dafür, dass ich bei Python bleibe, ist die Python-Community, der sehr unterschiedliche und sehr offene Menschen angehören. Die Community ist für das Programmieren außerordentlich wichtig, da Programmierung keine Aufgabe für Einzelkämpfer ist. Selbst die erfahrensten Programmierer brauchen hin und wieder Rat von anderen, die bereits ähnliche Probleme gelöst haben. Eine gut vernetzte und hilfsbereite Community ist zur Problemlösung unverzichtbar, und die Python-Community hilft sowohl Menschen wie Ihnen, die Python als erste Programmiersprache lernen, gern weiter, als auch jenen, die bereits Kenntnisse einer anderen Programmiersprache haben und auf Python umsteigen.
Python ist eine großartige Sprache. Beginnen wir also damit, sie zu erlernen!
In Teil I dieses Buches lernen Sie die Grundlagen kennen, die Sie zum Schreiben von Python-Programmen benötigen. Viele dieser Prinzipien sind in allen Programmiersprachen gleich, sodass diese Kenntnisse Ihnen auch in Ihrem weiteren Leben als Programmierer helfen.
In Kapitel 1 installieren Sie Python auf Ihrem Computer und führen Ihr erstes Programm aus, das die Meldung Hello World! auf dem Bildschirm ausgibt.
In Kapitel 2 lernen Sie, wie Sie Informationen Variablen zuweisen, und arbeiten sowohl mit Text- als auch mit numerischen Werten.
Die Kapitel 3 und 4 geben eine Einführung in Listen. Damit können Sie in einer Variablen so viele Informationen speichern, wie Sie wollen, was einen wirtschaftlicheren Umgang mit den Daten ermöglicht. Mit nur wenigen Codezeilen können Sie Hunderte, Tausende und sogar Millionen Werte verarbeiten.
In Kapitel 5 verwenden Sie if-Anweisungen, damit Ihr Code, je nachdem, ob bestimmte Bedingungen erfüllt sind oder nicht, auf unterschiedliche Weise reagiert.
Kapitel 6 zeigt Ihnen, wie Sie Dictionaries nutzen, in denen Sie Informationen miteinander verknüpfen können. Ebenso wie Listen können Dictionaries so viele Informationen enthalten, wie Sie speichern möchten.
In Kapitel 7 erfahren Sie, wie Sie Eingaben von Benutzern entgegennehmen, um Ihre Programme interaktiv zu gestalten. Außerdem lernen Sie while-Schleifen kennen, mit denen Sie Codeblöcke wiederholt ausführen können, solange bestimmte Bedingungen wahr sind.
In Kapitel 8 schreiben Sie Funktionen. Dabei handelt es sich um benannte Codeblöcke, die fest umrissene Aufgaben erledigen und überall dort ausgeführt werden können, wo Sie sie brauchen.
Kapitel 9 gibt eine Einführung in Klassen, mit denen Sie Objekte aus der Realität wie Hunde, Katzen, Menschen, Autos, Raketen usw. modellieren können. Dadurch kann Ihr Code jeden realen oder abstrakten Gegenstand darstellen.
Kapitel 10 zeigt Ihnen, wie Sie mit Dateien arbeiten und Fehler abfangen, damit Ihr Programm nicht abstürzt. Sie können Daten speichern, bevor Ihr Programm beendet wird, und diese bei einer erneuten Ausführung des Programms wieder einlesen. Außerdem lernen Sie die Einrichtung von Ausnahmen kennen, mit denen Sie Fehler vorhersehen können und die dafür sorgen, dass das Programm die Fehler elegant handhabt.
In Kapitel 11 lernen Sie, wie Sie Tests für Ihren Code schreiben, um zu prüfen, ob Ihre Programme wie beabsichtigt funktionieren. Dadurch können Sie Ihre Programme erweitern, ohne Angst haben zu müssen, neue Fehler einzuführen. Ihren Code testen zu können ist eine der grundlegenden Fähigkeiten, um vom Programmieranfänger zum Fortgeschrittenen aufzusteigen.
In diesem Kapitel schreiben Sie Ihr erstes Python-Programm, hello_world.py. Zunächst müssen Sie sich jedoch vergewissern, ob Python auf Ihrem Computer bereits vorhanden ist. Falls das nicht der Fall sein sollte, müssen Sie es installieren. Außerdem müssen Sie einen Texteditor installieren, in dem Sie Ihre Python-Programme schreiben und bearbeiten. Die Texteditoren, um die es hier geht, können Python-Code erkennen und verschiedene Abschnitte kennzeichnen, was es leichter macht, einen Überblick über die Struktur des Codes zu behalten.
Je nach Betriebssystem kann Python leicht abweichende Eigenschaften aufweisen, über die Sie sich im Klaren sein müssen. In den folgenden Abschnitten sehen wir uns an, was Sie tun müssen, um Python auf Ihrem System korrekt zu installieren.
Programmiersprachen entwickeln sich weiter, wenn neue Konzepte und neue Technologien aufkommen. Die Entwickler von Python haben die Sprache im Laufe der Zeit vielseitiger und leistungsfähiger gemacht. Während ich diese Zeilen schreibe, ist Python 3.11 die neueste Version, allerdings funktioniert der gesamte in diesem Buch vorgestellte Code auch mit Python 3.9 und höher. In diesem Abschnitt erfahren Sie, wie Sie herausfinden, ob Python bereits auf Ihrem System installiert ist bzw. ob Sie eine neuere Version brauchen. In Anhang A erhalten Sie außerdem zusätzliche Informationen zur Installation der neuesten Version von Python auf allen wichtigen Betriebssystemen.
Mit dem Python-Interpreter, der in einem Terminalfenster läuft, können Sie einzelne Teile von Python-Code ausführen, ohne ein komplettes Programm speichern und starten zu müssen.
In diesem Buch werden Sie immer wieder Codeausschnitte wie den folgenden sehen:
❶ >>> print("Hello Python interpreter!")
Hello Python interpreter!
Die Eingabeaufforderung mit den drei spitzen Klammern ( >>>) besagt, dass Sie das Terminalfenster verwenden sollten, und der fettgedruckte Text ist der Code, den Sie eingeben. Um ihn auszuführen, drücken Sie die Eingabetaste. Die meisten Beispiele in diesem Buch sind jedoch kleine, eigenständige Programme, die Sie nicht im Terminal, sondern im Texteditor laufen lassen, weil Sie dort den Großteil des Codes schreiben werden. Um Grundprinzipien vorzuführen, zeige ich Ihnen manchmal jedoch auch Codeausschnitte, die in einer Python-Terminalsitzung ausgeführt werden, weil sich die verschiedenen grundlegenden Fälle dadurch besser demonstrieren lassen. Wenn Sie in einem Codelisting drei spitze Klammern sehen (❶), wissen Sie, dass Sie es mit der Ausgabe einer Terminalsitzung zu tun haben. Mit dem Codieren im Interpreter werden wir in Kürze beginnen.
Wir werden allerdings auch einen Texteditor einsetzen, um ein einfaches Programm namens Hello World! zu erstellen, das zum Erlernen der Programmierung einfach dazugehört. Unter Programmierern herrscht seit langer Zeit die Meinung vor, dass es Glück bringt, wenn man mit dem ersten Programm in einer neuen Sprache die Meldung »Hello World!« auf dem Bildschirm ausgibt. Solch ein einfaches Programm hat tatsächlich einen Zweck. Wenn es auf Ihrem System korrekt ausgeführt wird, wissen Sie, dass im Prinzip auch jedes andere Python-Programm laufen kann.
VS Code ist ein leistungsstarker, professioneller Texteditor, der gratis und anfängerfreundlich ist. VS Code eignet sich sowohl für einfache als auch für komplexe Projekte. Wenn Sie sich also beim Erlernen von Python mit dem Editor vertraut machen, können Sie ihn auch bei größeren und komplizierteren Projekten weiter verwenden. VS Code kann auf allen modernen Betriebssystemen installiert werden und unterstützt die meisten Programmiersprachen, einschließlich Python.
Anhang B enthält Informationen über weitere Texteditoren. Wenn Sie neugierig sind, was es noch alles an Möglichkeiten gibt, können Sie jetzt einen Blick in den Anhang werfen. Wollen Sie dagegen schnell mit dem Programmieren beginnen, fangen Sie einfach mit VS Code an und schauen sich erst dann nach anderen Editoren um, wenn Sie etwas Erfahrung gewonnen haben. In diesem Kapitel zeige ich Ihnen, wie Sie VS Code auf Ihrem Betriebssystem installieren.
Hinweis
Wenn Sie bereits einen Texteditor installiert haben und wissen, wie Sie ihn für die Ausführung von Python-Programmen konfigurieren, können Sie stattdessen natürlich auch diesen verwenden.
Python ist eine plattformübergreifende Programmiersprache, läuft also auf allen wichtigen Betriebssystemen. Jedes Python-Programm, das Sie schreiben, kann auf jedem modernen Computer ausgeführt werden, auf dem Python installiert ist. Wie Sie Python selbst einrichten, hängt jedoch jeweils vom Betriebssystem ab.
In diesem Abschnitt erfahren Sie, wie Sie auf Ihrem System Python einrichten. Als Erstes prüfen Sie, ob eine neuere Version von Python auf Ihrem Computer installiert ist, und holen die Installation nach, wenn das noch nicht der Fall ist. Anschließend installieren Sie VS Code. Nur zwei Schritte dieses Vorgangs sind bei jedem Betriebssystem unterschiedlich.
In den darauffolgenden Abschnitten führen Sie hello_world.py aus. Falls ein Fehler aufgetreten ist, machen Sie sich außerdem auf die Suche nach der Ursache. Diese Vorgehensweise zur Einrichtung einer anfängerfreundlichen Python-Programmierumgebung führe ich Ihnen für jedes der wichtigen Betriebssysteme vor.
Python ist auf Windows-Computern normalerweise nicht im Lieferumfang enthalten, weshalb Sie es wahrscheinlich erst installieren müssen. Danach benötigen Sie noch VS Code.
Prüfen Sie als Erstes, ob Python auf Ihrem System installiert ist. Dazu öffnen Sie eine Eingabeaufforderung, indem Sie im Startmenü cmd eingeben oder indem Sie bei gedrückter -Taste auf den Desktop rechtsklicken und Eingabeaufforderung auswählen. Geben Sie an der Eingabeaufforderung python in Kleinbuchstaben ein. Wenn daraufhin eine Python-Eingabeaufforderung (>>>) erscheint, ist Python auf Ihrem System installiert. Sollten Sie dagegen die Fehlermeldung erhalten, dass der Befehl python nicht gefunden werden konnte oder wenn sich der Microsoft Store öffnet, ist Python noch nicht installiert. Schließen Sie den Microsoft Store, wenn er sich öffnet; es ist besser, ein offizielles Installationsprogramm herunterzuladen, als die Version von Microsoft zu verwenden.
In diesem Fall – oder falls Sie eine ältere Version als Python 3.9 haben – müssen Sie den Python-Installer für Windows herunterladen. Besuchen Sie https://python.org/. Wenn Sie den Mauszeiger über den Menüpunkt Downloads halten, wird eine Schaltfläche zum Herunterladen der neuesten Version eingeblendet. Wenn Sie darauf klicken, wird automatisch der passende Installer für Ihr System heruntergeladen. Nachdem der Download abgeschlossen ist, führen Sie den Installer aus. Aktivieren Sie die Option Add Python to PATH, um sich die Konfiguration des Systems zu erleichtern (siehe Abb. 1–1).
Abb. 1–1Aktivieren Sie das Kontrollkästchen Add Python to PATH.
Öffnen Sie eine neue Eingabeaufforderung und geben Sie python in Kleinbuchstaben ein. Wenn Sie die Python-Eingabeaufforderung (>>>) sehen, hat Windows die zuvor installierte Python-Version gefunden:
C:\> python
Python 3.x.x (mein, Jun . . ., 13:29:14) [MSC v.1932 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
Hinweis
Wenn Sie diese (oder eine ähnliche) Ausgabe nicht sehen sollten, schlagen Sie die ausführlichere Anleitung zur Einrichtung in Anhang A nach.
Geben Sie in Ihrer Python-Sitzung folgende Zeile ein und vergewissern Sie sich, dass tatsächlich Hello Python interpreter! ausgegeben wird:
>>> print("Hello Python interpreter!")
Hello Python interpreter!
>>>
Sie sollten jetzt die Ausgabe Hello Python interpreter! sehen. Wenn Sie einen Python-Codeausschnitt ausführen wollen, öffnen Sie eine Eingabeaufforderung und starten eine Python-Terminalsitzung. Um diese Sitzung wieder zu beenden, drücken Sie und dann die Eingabetaste oder geben den Befehl exit() ein.
Sie können ein Installationspaket für VS Code unter https://code.visualstudio.com herunterladen. Klicken Sie auf die Schaltfläche Download für Windows und führen Sie das Installationsprogramm aus. Überspringen Sie die folgenden Abschnitte über macOS und Linux und folgen Sie den Schritten unter »Das Hello-World-Programm ausführen« auf Seite 11.
Python ist auf den aktuellen Versionen von macOS nicht standardmäßig installiert, Sie müssen es also nachinstallieren, wenn Sie es nicht schon getan haben. In diesem Abschnitt installieren Sie die neueste Version von Python, dann VS Code und prüfen, ob es richtig konfiguriert ist.
Hinweis
Python 2 war in älteren Versionen von macOS vorhanden, aber es ist eine veraltete Version, die Sie nicht verwenden sollten.
Öffnen Sie über Gehe zu > Dienstprogramme > Terminal ein Terminalfenster. Alternativ können Sie auch drücken, terminal eingeben und dann die Eingabetaste drücken. Geben Sie python3 ein, um festzustellen, ob Sie eine hinreichend aktuelle Version von Python installiert haben. Höchstwahrscheinlich werden Sie eine Meldung zur Installation der Entwicklerwerkzeuge für die Kommandozeile erhalten. Es ist besser, diese Werkzeuge nach der Installation von Python zu installieren. Wenn diese Meldung erscheint, schließen Sie das Pop-up-Fenster. Wenn die Ausgabe zeigt, dass Sie Python 3.9 oder eine neuere Version installiert haben, können Sie den nächsten Abschnitt überspringen und mit Python in einer Terminalsitzung ausführen fortfahren. Wenn Sie eine frühere Version als Python 3.9 sehen, folgen Sie den Anweisungen im nächsten Abschnitt, um die neueste Version zu installieren. Beachten Sie, dass Sie unter macOS, wann immer Sie in diesem Buch den Befehl python sehen, stattdessen den Befehl python3 verwenden müssen, um sicherzustellen, dass Sie Python 3 benutzen. Auf den meisten macOS-Systemen verweist der python-Befehl entweder auf eine veraltete Version von Python, die nur von internen Systemwerkzeugen verwendet werden sollte, oder er verweist auf gar nichts und erzeugt eine Fehlermeldung.
Einen Python-Installer für Ihr System finden Sie auf https://python.org/. Wenn Sie den Mauszeiger über den Menüpunkt Downloads halten, wird eine Schaltfläche zum Herunterladen der neuesten Version von Python eingeblendet. Wenn Sie darauf klicken, wird automatisch der passende Installer für Ihr System heruntergeladen. Nachdem der Download abgeschlossen ist, führen Sie den Installer aus.
Wenn das Installationsprogramm ausgeführt wurde, sollte ein Finder-Fenster erscheinen. Doppelklicken Sie auf die Datei Install Certificates.command. Wenn Sie diese Datei ausführen, können Sie leichter zusätzliche Bibliotheken installieren, die Sie für spätere Projekte benötigen, einschließlich der Projekte in der zweiten Hälfte dieses Buchs.
Sie können jetzt versuchen, Python-Codeausschnitte auszuführen, indem Sie ein neues Terminalfenster öffnen und python3 eingeben.
$ python3Python 3.x.x (v3.11.0:eb0004c271, Jun . . . , 10:03:01)
[Clang 13.0.0 (clang-1300.0.29.30)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
Dieser Befehl startet eine Python-Terminalsitzung. Sie sollten eine Python-Eingabeaufforderung (>>>) sehen, was bedeutet, dass macOS die Python-Version gefunden hat, die Sie gerade installiert haben.
Probieren Sie das mit folgender Zeile aus:
>>> print("Hello Python interpreter!")
Hello Python interpreter!
>>>
Die Meldung Hello Python interpreter! wird unmittelbar im aktuellen Terminalfenster ausgegeben. Um den Python-Interpreter wieder zu schließen, drücken Sie oder geben den Befehl exit() ein.
Hinweis
Auf neueren macOS-Systemen sehen Sie ein Prozentzeichen (%) als Terminal-Eingabeaufforderung anstelle eines Dollarzeichens ($).
Um den VS-Code-Editor zu installieren, müssen Sie das Installationsprogramm unter https://code.visualstudio.com herunterladen. Klicken Sie auf die Schaltfläche Download, öffnen Sie dann ein Finder-Fenster und gehen Sie zum Ordner Downloads. Ziehen Sie das Installationsprogramm für Visual Studio Code in Ihren Anwendungsordner und doppelklicken Sie dann darauf, um es auszuführen. Überspringen Sie den folgenden Abschnitt über Python unter Linux und folgen Sie den Schritten unter »Das Hello-World-Programm ausführen« auf Seite 11.
Linux-Systeme sind für die Programmierung ausgelegt, weshalb Python auf den meisten Linux-Computern schon installiert ist. Die Personen, die Linux schreiben und pflegen, gehen davon aus, dass Sie irgendwann selbst etwas programmieren, und ermutigen Sie dazu. Daher müssen Sie nicht mehr viel installieren und nur einige wenige Einstellungen ändern, um mit dem Programmieren beginnen zu können.
Führen Sie die Anwendung Terminal aus, um ein Terminalfenster zu öffnen (in Ubuntu können Sie dazu klicken). Um herauszufinden, ob Python installiert ist, geben Sie python3 (mit kleinem p) ein. Die Ausgabe zeigt Ihnen auch gleich, welche Version von Python installiert ist. Außerdem erhalten Sie die Eingabeaufforderung >>>, an der Sie direkt damit beginnen können, Python-Befehle einzugeben, so wie hier:
$ python3
$ python3Python 3.10.4 (main, Apr . . . , 09:04:19) [GCC 11.2.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
Laut dieser Ausgabe ist auf dem Computer Python 3.10.4 als Standardversion von Python installiert. Um von der Python-Aufforderung zur normalen Terminal-Eingabeaufforderung zurückzukehren, drücken Sie oder geben exit() ein. An allen Stellen, an denen in diesem Buch der Befehl python angegeben ist, müssen Sie jedoch python3 eingeben.
Um den Code in diesem Buch auszuführen, benötigen Sie Python 3.9 oder höher. Ist auf Ihrem System nur eine ältere Version als Python 3.9 vorhanden, oder wenn Sie auf dem aktuellen Stand sein möchten, installieren Sie die neueste Version nach der Anleitung aus Anhang A.
Einzelne Python-Codeausschnitte können Sie auch dadurch ausführen, dass Sie ein Terminal öffnen und wie bei der Versionsprüfung python3 eingeben. Geben Sie diesmal aber an der Eingabeaufforderung folgende Zeile ein:
>>> print("Hello Python interpreter!")
Hello Python interpreter!
>>>
Ihre Meldung wird unmittelbar im aktuellen Terminalfenster ausgegeben. Um den Python-Interpreter wieder zu schließen, drücken Sie oder geben den Befehl exit() ein.
Unter Ubuntu Linux können Sie VS Code über das Ubuntu Software Center installieren. Klicken Sie auf das Ubuntu-Software-Symbol und suchen Sie nach vs-code. Klicken Sie auf die Anwendung Visual Studio Code (manchmal auch Code genannt), und klicken Sie dann auf Installieren. Sobald sie installiert ist, suchen Sie auf Ihrem System nach VS Code und starten Sie die Anwendung.
Nachdem Sie die jüngsten Versionen von Python und VS Code installiert haben, sind Sie schon fast so weit, ein erstes im Texteditor geschriebenes Python-Programm auszuführen. Zuvor allerdings müssen Sie noch dafür sorgen, dass die Python-Erweiterung für VS Code installiert ist.
VS Code funktioniert mit vielen verschiedenen Programmiersprachen, aber um als Python-Programmierer das meiste aus ihm herauszuholen, müssen Sie die Python-Erweiterung installieren. Diese Erweiterung bietet Unterstützung für das Schreiben, Bearbeiten und Ausführen von Python-Programmen.
Um die Python-Erweiterung zu installieren, klicken Sie auf das Symbol Verwalten, das wie ein Zahnrad unten links in der VS-Code-App aussieht. Klicken Sie in dem eingeblendeten Menü auf Erweiterungen. Geben Sie python in das Suchfeld ein und klicken Sie auf die Python-Erweiterung. (Wenn Sie mehr als eine Erweiterung mit dem Namen Python sehen, wählen Sie die von Microsoft angebotene.) Klicken Sie auf Installieren und installieren Sie alle zusätzlichen Tools, die Ihr System benötigt, um die Installation abzuschließen. Wenn Sie eine Meldung sehen, dass Sie Python installieren müssen, dies aber bereits getan haben, können Sie diese Meldung ignorieren.
Hinweis
Wenn Sie macOS verwenden und ein Pop-up-Fenster Sie auffordert, die Kommandozeilen-Entwicklerwerkzeuge zu installieren, klicken Sie auf Installieren. Möglicherweise wird eine Meldung angezeigt, dass die Installation übermäßig lange dauert, aber bei einer normalen Internetverbindung sollte sie nur etwa 10 bis 20 Minuten dauern.
Bevor Sie Ihr erstes Programm schreiben, legen Sie zunächst irgendwo auf Ihrem Schreibtisch den Ordner python_work für Ihre Projekte an. Es ist am besten, nur Kleinbuchstaben zu verwenden und die Namensbestandteile mit Unterstrichen statt mit Leerzeichen voneinander abzusetzen, da dies der Konvention von Python entspricht.
Öffnen Sie VS Code und schließen Sie die Registerkarte Get Started, falls sie noch geöffnet ist. Erstellen Sie eine neue Datei, indem Sie auf Datei, Neue Datei klicken oder drücken ( unter macOS). Speichern Sie die Datei unter dem Namen hello_world.py in Ihrem Ordner python_work. Die Dateierweiterung .py sagt VS Code, dass Ihre Datei in Python geschrieben ist, und teilt ihm mit, wie es das Programm ausführen und den Text auf hilfreiche Weise hervorheben soll. Nachdem Sie Ihre Datei gespeichert haben, geben Sie die folgende Zeile in den Editor ein:
hello_world.py
print("Hello Python world!")
Um Ihr Programm auszuführen, wählen Sie Run, Run without Debugging oder drücken Sie . Am unteren Rand des VS-Code-Fensters sollte ein Terminalfenster erscheinen, das die Ausgabe Ihres Programms anzeigt:
Hello Python world!
Sie werden wahrscheinlich einige zusätzliche Meldungen sehen, die den Python-Interpreter angeben, der zur Ausführung Ihres Programms verwendet wurde. Wenn Sie die angezeigten Informationen vereinfachen möchten, damit Sie nur die Ausgabe Ihres Programms sehen, lesen Sie Anhang B. Dort finden Sie auch hilfreiche Vorschläge, wie Sie VS Code effizienter nutzen können.
Wenn Sie diese Ausgabe nicht sehen, ist irgendetwas in dem Programm schiefgelaufen. Prüfen Sie jedes einzelne Zeichen in der eingegebenen Zeile. Haben Sie print versehentlich mit großem P geschrieben? Haben Sie ein Anführungszeichen oder eine Klammer vergessen? Programmiersprachen erwarten eine ganz bestimmte Syntax, und wenn Sie diesen Erwartungen nicht nachkommen, ergibt sich ein Fehler. Wenn Sie das Programm nicht zum Laufen bekommen, schlagen Sie im nächsten Abschnitt nach.
Falls Sie jedoch nicht in der Lage sind, hello_world.py auszuführen, sollten Sie folgende Abhilfemaßnahmen ausprobieren:
Wenn ein Programm einen schweren Fehler enthält, durchsucht Python die Datei und meldet das Problem, indem es eine
Rückverfolgung
(
Traceback
) anzeigt. Darin können Sie einen Hinweis darauf finden, was die Ausführung des Programms verhindert.
Legen Sie eine Pause ein (und verbringen Sie sie nicht am Computer). Versuchen Sie es dann noch einmal. Denken Sie daran, dass die Syntax in der Programmierung von entscheidender Bedeutung ist. Schon so etwas Einfaches wie ein falsches Anführungszeichen oder Klammern können verhindern, dass ein Programm korrekt ausgeführt wird. Lesen Sie die entsprechenden Abschnitte in diesem Kapitel noch einmal, schauen Sie sich an, was Sie geschrieben haben, und versuchen Sie, den Fehler herauszufinden.
Fangen Sie noch einmal von vorn an. Es ist dabei wahrscheinlich nicht erforderlich, irgendetwas zu deinstallieren, aber es ist sinnvoll, die Datei
hello_world.py
zu löschen und neu zu erstellen.
Bitten Sie jemanden, die in diesem Kapitel aufgeführten Schritte auf Ihrem Computer oder auf einem anderen Rechner zu wiederholen, und beobachten Sie genau, was diese andere Person tut. Möglicherweise haben Sie nur einen kleinen Schritt ausgelassen.
Sehen Sie sich die zusätzlichen Installationshinweise in
Anhang A
an. Einige der im
Anhang
enthaltenen Informationen können Ihnen helfen, Ihr Problem zu lösen.
Bitten Sie jemanden, der sich mit Python auskennt, um Hilfe bei der Einrichtung. Wenn Sie sich umhören, werden Sie möglicherweise feststellen, dass Sie bereits jemanden kennen, der Python verwendet, ohne dass Sie es wussten.
Die Installationsanleitungen in diesem Kapitel sind auch auf der Begleitwebsite zu diesem Buch auf
https://ehmatthes.github.io/pcc_3e
erhältlich. Vielleicht kann Ihnen die Onlineversion der Anleitung besser helfen, da Sie einfach Code von dort kopieren und die Links direkt anklicken können. (Sie liegt allerdings in englischer Sprache vor.)
Bitten Sie online um Hilfe.
Anhang C
führt eine Reihe von Websites wie Foren und Chats auf, in denen Sie Personen, die Ihr Problem schon gelöst haben, um Anleitungen fragen können.
Hinweis
Umlaute können zu Syntaxfehlern durch den Python-Compiler führen, weil sie nicht Teil des Standardcodes sind. Um solche Fehler zu vermeiden, sollten Sie auf Umlaute (und ß) generell (auch in Kommentaren) verzichten.
Machen Sie sich keine Sorgen darüber, dass Sie erfahrene Programmierer mit Ihren Fragen stören könnten. Alle Programmierer haben schon selbst einmal den Punkt erreicht, an dem sie nicht mehr weiterkamen, und die meisten freuen sich, Ihnen bei der Einrichtung Ihres Systems zu helfen. Wenn Sie klar und deutlich beschreiben, was Sie tun wollen, was Sie bereits versucht haben und welche Ergebnisse Sie dabei erhalten haben, stehen die Chancen gut, dass Ihnen jemand helfen kann. Wie bereits in der Einleitung erwähnt, ist die Python-Community sehr freundlich und offen gegenüber Einsteigern.
Python sollte auf allen modernen Computern gut laufen. Probleme in diesem frühen Stadium können sehr frustrierend sein, und es lohnt sich, ihnen auf den Grund zu gehen. Wenn hello_world.py erst einmal läuft, können Sie mit dem Erlernen von Python anfangen. Ihre Programmierarbeit wird dann immer interessanter und befriedigender.
Die meisten Programme führen Sie auch direkt im Editor aus. Manchmal ist es jedoch sinnvoll, das Programm stattdessen in einem Terminalfenster auszuführen, beispielsweise wenn Sie ein schon vorhandenes Programm verwenden möchten, ohne es erst zur Bearbeitung zu öffnen.
Das können Sie auf jedem System tun, auf dem Python installiert ist – wenn Sie wissen, wie Sie auf das Verzeichnis zugreifen, in dem die Programmdatei gespeichert ist. In den folgenden Beispielen gehen wir davon aus, dass die Datei hello_world.py im Ordner python_work auf Ihrem Desktop liegt.
Mit dem Terminalbefehl cd (»change directory«, also »Verzeichnis wechseln«) können Sie sich an einer Eingabeaufforderung durch Ihr Dateisystem bewegen, und der Befehl dir (»directory«) führt alle Dateien im jeweiligen Verzeichnis auf.
Öffnen Sie ein neues Terminalfenster und geben Sie die folgenden Befehle ein, um hello_world.py auszuführen:
❶ C:\> cd Desktop\python_work
❷ C:\Desktop\python_work> dir
hello_world.py
❸ C:\Desktop\python_work> python hello_world.py
Hello Python world!
Bei ❶ wechseln wir mit cd in den Ordner python_work, der sich im Ordner Desktop befindet. Danach vergewissern wir uns mit dir, dass sich hello_world.py tatsächlich in diesem Ordner befindet (❷). Anschließend führen wir die Datei mit dem Befehl python hello_world.py aus (❸).
Die meisten Ihrer Programme können Sie problemlos direkt im Editor ausführen. Wenn Ihre Programme anspruchsvoller werden, kann es jedoch sein, dass Sie einige davon im Terminal ausführen müssen.
Die Ausführung eines Programms im Terminal erfolgt unter Linux genauso wie unter macOS. Mit dem Terminalbefehl cd (»change directory«, also »Verzeichnis wechseln«) können Sie sich in einer Terminalsitzung durch Ihr Dateisystem bewegen, und der Befehl ls (»list«) führt alle nicht verborgenen Dateien im jeweiligen Verzeichnis auf.
Öffnen Sie ein neues Terminalfenster und geben Sie die folgenden Befehle ein, um hello_world.py auszuführen:
❶ ~$ cd Desktop/python_work/
❷ ~/Desktop/python_work$ ls
hello_world.py
❸ ~/Desktop/python_work$ python hello_world.py
Hello Python world!
Bei ❶ wechseln wir mit cd in den Ordner python_work, der sich im Ordner Desktop befindet. Danach vergewissern wir uns mit ls, dass hello_world.py tatsächlich in diesem Ordner liegt (❷). Anschließend führen wir die Datei mit dem Befehl python hello_world.py aus (❸).
Die meisten Ihrer Programme lassen sich problemlos direkt vom Editor aus starten. Wenn Ihre Arbeit jedoch komplexer wird, werden Sie einige Programme über ein Terminal ausführen wollen.
Probieren Sie es selbst aus!
Bei den Übungen in diesem Kapitel geht es darum, selbst Nachforschungen anzustellen. Ab Kapitel 2 beruhen die Aufgaben auf dem Stoff, den Sie gelernt haben.
1-1 python.org: Schauen Sie sich auf der Website von Python (https://python.org) nach Themen um, die Sie interessant finden. Wenn Sie Python besser kennen, werden einige Teile dieser Website nützlicher für Sie sein, als sie es jetzt sind.
1-2 Tippfehler in »Hello World«: Öffnen Sie die Datei hello_world.py. Fügen Sie irgendwo in der Zeile einen Tippfehler ein und führen Sie das Programm erneut aus. Können Sie einen Tippfehler einbauen, der eine Fehlermeldung hervorruft? Ergibt die Fehlermeldung für Sie einen Sinn? Können Sie einen Tippfehler einbauen, der nicht zu einer Fehlermeldung führt? Warum ruft dieser Tippfehler keine Fehlermeldung hervor?
1-3 Unbegrenzte Fähigkeiten: Stellen Sie sich vor, Sie hätten unbegrenzte Programmierfähigkeiten. Was für Programme würden Sie dann schreiben? Sie beginnen gerade, programmieren zu lernen. Wenn Sie ein Ziel vor Augen haben, können Sie Ihre neu erworbenen Fähigkeiten sofort einsetzen. Jetzt ist der ideale Zeitpunkt, um kurze Beschreibungen der Programme zu formulieren, die Sie gern entwickeln möchten. Es ist eine gute Angewohnheit, ein »Ideentagebuch« zu führen, in dem Sie nachschlagen können, wenn Sie mit einem neuen Projekt beginnen wollen. Nehmen Sie sich einige Minuten Zeit, um drei Programme zu beschreiben, die Sie gern erstellen möchten.
In diesem Kapitel haben Sie ein bisschen über Python im Allgemeinen gelernt und Python auf Ihrem System installiert, falls es noch nicht vorhanden war. Außerdem haben Sie einen Texteditor installiert, um sich das Schreiben von Python-Code zu erleichtern. Sie haben erfahren, wie Sie Python-Codeausschnitte in einer Terminalsitzung laufen lassen können, und mit hello_world.py Ihr erstes kleines Programm ausgeführt. Wahrscheinlich haben Sie auch ein bisschen über Fehlersuche gelernt.
Im nächsten Kapitel sehen wir uns die verschiedenen Arten von Daten an, mit denen Sie in Python-Programmen arbeiten können. Außerdem lernen Sie, mit Variablen umzugehen.
In diesem Kapitel lernen Sie die verschiedenen Arten von Daten kennen, mit denen Sie in Python-Programmen arbeiten können. Außerdem erfahren Sie, wie Sie die Daten in Variablen speichern und diese Variablen in Ihren Programmen einsetzen.
Sehen wir uns nun genauer an, was Python macht, wenn Sie hello_world.py laufen lassen. Selbst bei einem so einfachen Programm erledigt Python eine ziemliche Menge an Arbeit:
hello_world.py
print("Hello Python world!")
Wenn Sie diesen Code ausführen, erhalten Sie folgende Ausgabe:
Hello Python world!
Die Dateiendung .py gibt an, dass es sich bei der Datei um ein Python-Programm handelt. Der Editor führt die Datei mithilfe des Python-Interpreters aus, der das Programm liest und dabei ermittelt, was jedes einzelne darin enthaltene Wort bedeutet. Sieht er beispielsweise das Wort print, gefolgt von Klammern, gibt er den Inhalt dieser Klammern auf dem Bildschirm aus.
Während Sie ein Programm schreiben, kennzeichnet der Editor die verschiedenen Teile des Programms durch unterschiedliche Farben. Beispielsweise erkennt er, dass es sich bei print() um den Namen einer Funktion handelt, und stellt das Wort in einer bestimmten Farbe dar. Er bemerkt auch, dass "Hello Python world!" kein Python-Code ist, und färbt diesen Satz daher anders ein. Diese sogenannte Syntaxkennzeichnung ist sehr praktisch, wenn Sie Ihre eigenen Programme schreiben.
Versuchen wir nun, in hello_world.py eine Variable zu verwenden. Fügen Sie am Anfang der Datei eine neue Zeile ein und ändern Sie die zweite Zeile:
hello_world.py
Wenn Sie dieses Programm ausführen, erhalten Sie die gleiche Ausgabe wie zuvor:
Hello Python world!
Was wir hinzugefügt haben, ist eine Variable namens message. Jede Variable enthält einen Wert, also eine Information, die mit ihr verknüpft ist. In diesem Fall ist der Wert der Text "Hello Python world!".
Die Ergänzung um eine Variable macht dem Python-Interpreter etwas mehr Arbeit. Wenn er die erste Zeile verarbeitet, verknüpft er den Text "Hello Python world!" mit der Variablen message. In der zweiten Zeile angekommen, gibt er den Wert von message auf dem Bildschirm aus.
Wir wollen das Programm nun noch um eine zweite Meldung erweitern. Fügen Sie am Ende von hello_world.py eine leere Zeile und dann zwei neue Codezeilen ein:
Wenn Sie jetzt hello_world.py ausführen, erhalten Sie eine Ausgabe von zwei Zeilen:
Hello Python world!
Hello Python Crash Course world!
Den Wert einer Variablen können Sie in einem Programm jederzeit ändern. Python merkt sich stets den aktuellen Wert.
Wenn Sie in Python Variablen verwenden, müssen Sie einige Regeln und Richtlinien einhalten. Die Richtlinien dienen nur dazu, Code zu schreiben, der sich leichter lesen und verstehen lässt, doch wenn Sie die Regeln brechen, kann das einen Fehler zur Folge haben. Merken Sie sich daher folgende Punkte für den Umgang mit Variablen:
Variablennamen dürfen nur Buchstaben, Ziffern und Unterstriche enthalten. Am Anfang darf ein Buchstabe oder ein Unterstrich stehen, aber keine Zahl. Beispielsweise können Sie eine Variable
message_1
nennen, aber nicht
1_message
.
Leerzeichen sind in Variablennamen nicht erlaubt. Um Namensbestandteile zu trennen, können Sie Unterstriche verwenden. Beispielsweise ist
greeting_message
ein gültiger Variablenname, wohingegen
greeting message
einen Fehler hervorruft.
Verwenden Sie keine Python-Schlüsselwörter und -Funktionsnamen als Variablennamen, also keine Wörter, die in Python für bestimmte Zwecke reserviert sind, z. B. das Wort
(siehe »Schlüsselwörter und integrierte Funktionen« in
Anhang A
).
Variablennamen sollten kurz, aber aussagekräftig sein. Beispielsweise ist
name
besser als
n
,
student_name
besser als
s_n
und
name_length
besser als
length_of_persons_name
.
Seien Sie bei der Verwendung des kleinen
l
und des großen O vorsichtig, da diese Buchstaben leicht mit den Zahlen
1
und
0
verwechselt werden können.
Es kann etwas Übung erfordern, sich gute Variablennamen auszudenken, vor allem, wenn Ihre Programme interessanter und komplizierter werden. Je mehr Programme Sie schreiben und je mehr Code anderer Leute Sie lesen, umso besser werden Sie jedoch darin, Variablen aussagekräftig zu benennen.
Hinweis