Читать книгу Einfach Python - Michael Inden - Страница 7
Inhaltsverzeichnis
Оглавление1.2.3Nacharbeiten nach der Python-Installation
1.2.4Python-Installation prüfen
1.2.5Python-Programm als Skript ausführen
1.3.3Erstes Projekt in PyCharm
2.2.3Bezeichner (Variablennamen)
2.5.1Eigene Funktionen definieren
2.5.2Nützliche Beispiele aus Python
2.5.3Fehlerbehandlung und Exceptions
2.9.2Indexbasierte for-in-Schleife
2.9.3Wertebasierte for-in-Schleife
2.9.4Index- und wertebasierte for-in-enumerate-Schleife
2.10Weiterführende Informationen
2.11.1Aufgabe 1: Mathematische Berechnungen
2.11.2Aufgabe 2: Bedingung vereinfachen
2.11.3Aufgabe 3: Funktion und if
2.11.4Aufgabe 4: Selbstabholerrabatt
2.11.5Aufgabe 5: Schleifen mit Berechnungen
2.11.6Aufgabe 6: Schleifen und fixe Schrittweite
2.11.7Aufgabe 7: Schleifen mit variabler Schrittweite
2.11.8Aufgabe 8: Verschachtelte Schleifen – Variante 1
2.11.9Aufgabe 9: Verschachtelte Schleifen – Variante 2
2.11.10Aufgabe 10: Verschachtelte Schleifen – Variante 3
3.1.1Gebräuchliche Stringaktionen
3.1.3Informationen extrahieren und formatieren
3.1.4Praxisrelevante Funktionen im Kurzüberblick
3.3.1Aufgabe 1: Länge, Zeichen und Enthaltensein
3.3.2Aufgabe 2: Zeichen wiederholen
4Klassen und Objektorientierung
4.1.1Grundlagen zu Klassen und Objekten
4.1.2Eigenschaften (Attribute)
4.1.4Objekte vergleichen – die Rolle von __eq__()
4.2.1Klassen ausführbar machen
4.2.3Übergang zum Einsatz einer IDE
4.2.4Verstecken von Informationen
4.2.5Packages: Auswirkungen auf unsere Applikation
4.3.2Typprüfung mit isinstance()
4.3.3Generalisierung und Spezialisierung
4.4.3Aufgabe 3: Zähler mit Überlauf
5.2.2Slicing – Zugriff auf Teilbereiche
5.2.3Sortierung – sort() / sorted()
5.2.4Tauschen von Elementen – swap()
5.2.5Reihenfolge umkehren – reverse() und reversed()
5.3Praxisbeispiel: Einen Stack selbst realisieren
5.4Praxisbeispiel: Flächen füllen
5.5.1Aufgabe 1: Tennisverein-Mitgliederliste
5.5.2Aufgabe 2: Liste mit Farbnamen füllen und filtern
5.5.3Aufgabe 3: Duplikate entfernen – Variante 1
5.5.4Aufgabe 4: Duplikate entfernen – Variante 2
5.5.6Aufgabe 6: Häufigkeiten von Namen
5.5.7Aufgabe 7: Objekte mit Dictionary selbst gebaut
5.5.8Aufgabe 8: Rotation um eine oder mehrere Positionen
5.5.9Aufgabe 9: Dreieckige Liste: Upside Down
6.2Zufallswerte und das Modul random
6.3Besonderheiten von Parametern
6.3.1Normale Parameter mit Position bzw. Name
6.3.2Parameter mit Defaultwert
6.3.3Var Args – variable Anzahl an Argumenten
6.6break, continue und else in Schleifen
6.6.1Funktionsweise von break und continue
6.6.3Besonderheit: else in Schleifen
6.7Ausdrücke mit eval() auswerten
6.9.2Aufgabe 2: Temperaturumrechnung
6.9.3Aufgabe 3: Palindrom-Prüfung mit Rekursion
6.9.4Aufgabe 4: Einarmiger Bandit
7.4Datencontainer mit namedtuple
7.5.2Lambdas im Einsatz mit filter(), map() und reduce()
7.5.3Lambdas im Einsatz mit sort()
7.5.4Lambdas im Einsatz mit groupby()
7.6.2Aufgabe 2: Erwachsene aus Personenliste extrahieren
7.6.3Aufgabe 3: Eigene Implementierung von rindex()
7.6.4Aufgabe 4: Elemente eines Dictionaries allgemeingültig filtern
7.6.5Aufgabe 5: Every-N-th-Iterator
7.6.6Aufgabe 6: Greeting-Generator
7.6.7Aufgabe 7: Fibonacci-Generator
7.6.8Aufgabe 8: Sortieren und Gruppieren
8.1.1Anlegen von Dateien und Verzeichnissen
8.1.2Aktuelles Verzeichnis wechseln
8.1.3Aktuelles Verzeichnis und absoluten Pfad ermitteln
8.1.4Inhalt eines Verzeichnisses auflisten
8.1.5Pfad ist Datei oder Verzeichnis?
8.1.7Informationen in Dateien schreiben und daraus lesen
8.1.8Einfluss der Verarbeitungsmodi
8.1.9Diverse Informationen ermitteln
8.2Praxisbeispiel: Directory-Baum darstellen
8.2.2Variante mit schönerer Darstellung
8.2.3Finale Variante mit ausgeklügelter Darstellung
8.3.1JSON in eine Datei schreiben
8.3.2Lesen von JSON aus einer Datei
8.4.1Aufgabe 1: Texte in Datei schreiben und wieder lesen
8.4.3Aufgabe 3: Existenzprüfung
8.4.5Aufgabe 5: Verzeichnisinhalt auflisten
9Fehlerbehandlung mit Exceptions
9.1.2Exceptions selbst auslösen – raise
9.1.3Eigene Exception-Typen definieren
9.1.4Propagation von Exceptions
9.2Fehlerbehandlung in der Praxis
9.2.1Elegante Prüfungen mit assert
9.3Automatic Resource Management (with)
9.4.1Aufgabe 1: Abgesicherter Indexzugriff – Kür mit Fallback-Wert
9.4.2Aufgabe 2: Einfacher Taschenrechner
9.4.3Aufgabe 3: Resource Handling
10.1.1Zeitpunkte und die Klasse datetime
10.1.2Datumswerte und die Klasse date
10.1.3Zeit und die Klasse time
10.1.4Zeitdifferenzen und die Klasse timedelta
10.1.6Formatierung und Parsing
10.2Praxisbeispiel: Kalenderausgabe
10.3.2Aufgabe 2: Freitag, der 13
10.3.3Aufgabe 3: Mehrmals Freitag, der 13
11.1Spielfeld initialisieren und darstellen
12Praxisbeispiel: CSV-Highscore-Liste einlesen
12.1Verarbeitung von Spielständen (Highscores)
12.3Besonderheiten der Implementierung
13.1Applikationsdesign – Vorüberlegungen zur Strukturierung
13.2Einlesen der verfügbaren Wörter
13.4.1Datenspeicherung und Initialisierung
13.4.2Zufällige Wahl von Richtung, Position, Wort und Buchstabe
13.4.3Algorithmus zum Verstecken von Wörtern
13.4.4Wort prüfen und platzieren
13.6Ausgabe als HTML und Darstellung im Browser
14.1Grundregeln eines guten Programmierstils
14.3.2Schreiben und Ausführen von Tests
A.1Schlüsselwörter im Überblick
CWesentliche Neuerungen aus Python 3.10 im Kurzüberblick
C.1.1Fehlermeldungen bei Zuweisungen
C.1.2Fehlermeldungen bei unvollständigen Strings
C.2Fallunterscheidungen mit match
C.3.1Verbesserungen bei Kontextmanagern
C.3.2Verbesserungen der Performance