
Python Crashkurs
Description
Alles über E-Books | Antworten auf Fragen rund um E-Books, Kopierschutz und Dateiformate finden Sie in unserem Info- & Hilfebereich.
More details
Other editions
Additional editions


Persons
Content
- Cover
- Titel
- Impressum
- Inhalt
- Widmung
- Der Autor
- Der Fachgutachter
- Danksagung
- Vorwort zur dritten Auflage
- Einleitung
- Zielgruppe
- Lernstoff
- Onlinematerial
- Warum Python?
- Teil 1 Grundlagen
- 1 Erste 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
- 2 Variablen 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
- 3 Eine 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
- 4 Mit 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
- 5 if-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
- 6 Dictionaries
- 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
- 7 Benutzereingaben 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
- 8 Funktionen
- 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
- 9 Klassen
- 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
- 10 Dateien 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
- 11 Code 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 2 Projekte
- Alien Invasion - ein Python-Spiel
- Datenvisualisierung
- Webanwendungen
- Projekt 1: Alien Invasion
- 12 Das 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
- 13 Die 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
- 14 Das 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
- 15 Daten 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
- 16 Daten 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
- 17 APIs
- 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
- 18 Erste 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
- 19 Benutzerkonten
- 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
- 20 Eine 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
- A Installation 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
- B Texteditoren 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
- C Hilfe 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
- D Versionssteuerung 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
- E Versionssteuerung mit Git
- Git installieren
- Grundlgegende Fehlersuche
- Den Hinweisen nachgehen
- Das Protokoll analysieren
- Betriebssystemspezifische Fehlersuche
- Von Windows bereitstellen
- Weitere Entwicklungsansätze
- Stichwortverzeichnis
System requirements
File format: PDF
Copy protection: Watermark-DRM (Digital Rights Management)
System requirements:
- Computer (Windows; MacOS X; Linux): Use the free software Adobe Reader, Adobe Digital Editions, or any other PDF viewer of your choice (see eBook Help).
- Tablet/Smartphone (Android; iOS): Install the free app Adobe Digital Editions or another reading app for eBooks, e.g., PocketBook (see eBook Help).
- E-reader: Bookeen, Kobo, Pocketbook, Sony, Tolino and many more (only limited: Kindle).
The file format PDF always displays a book page identically on any hardware. This makes PDF suitable for complex layouts such as those used in textbooks and reference books (images, tables, columns, footnotes). Unfortunately, on the small screens of e-readers or smartphones, PDFs are rather annoying, requiring too much scrolling.
This eBook uses Watermark-DRM, a „soft” copy protection. This means that there are no technical restrictions to prevent illegal distribution. However, there is a personalised watermark embedded in the eBook that can be used to identify the purchaser of the eBook in the event of misuse and to provide evidence for legal purposes.
For more information, see our eBook Help page.