Think Python, 2nd Edition

Book description

Wenn Sie programmieren lernen wollen, eignet sich Python hervorragend als Einstieg. Dieses Praxisbuch führt Sie Schritt für Schritt durch die Sprache, beginnend mit grundlegenden Programmierkonzepten, über Funktionen, Syntax und Semantik, Rekursion und Datenstrukturen bis hin zum objektorientierten Design. Jedes Kapitel enthält ein Glossar der Fachbegriffe sowie passende Übungen und Fallstudien, kurze Verständnistests und kleinere Projekte, an denen Sie die neu erlernten Programmierkonzepte gleich ausprobieren können. Auf diese Weise wenden Sie das Gelernte direkt an und festigen Ihr Verständnis für die konkrete Programmierpraxis. »Allen Downeys Erklärungen sind kristallklar, seine inspirierten Übungen werden Lernende mit unterschiedlichstem Background begeistern.« - Luciano Ramalho, Thoughtworks

Table of contents

  1. Cover
  2. Titel
  3. Impressum
  4. Inhalt
  5. Vorwort
  6. 1 Programme entwickeln
    1. Was ist ein Programm?
    2. Python ausführen
    3. Das erste Programm
    4. Arithmetische Operatoren
    5. Werte und Typen
    6. Formale und natürliche Sprachen
    7. Debugging
    8. Glossar
    9. Übungen
  7. 2 Variablen, Ausdrücke und Anweisungen
    1. Zuweisungen
    2. Variablennamen
    3. Ausdrücke und Anweisungen
    4. Skriptmodus
    5. Rangfolge von Operatoren
    6. String-Operationen
    7. Kommentare
    8. Debugging
    9. Glossar
    10. Übungen
  8. 3 Funktionen
    1. Funktionsaufrufe
    2. Mathematische Funktionen
    3. Komposition
    4. Neue Funktionen erstellen
    5. Definition und Verwendung
    6. Programmablauf
    7. Parameter und Argumente
    8. Variablen und Parameter sind lokal
    9. Stapeldiagramme
    10. Funktionen mit und ohne Rückgabewert
    11. Warum Funktionen?
    12. Debugging
    13. Glossar
    14. Übungen
  9. 4 Fallstudie: Gestaltung von Schnittstellen
    1. Das turtle-Modul
    2. Einfache Wiederholung
    3. Übungen
    4. Datenkapselung
    5. Generalisierung
    6. Gestaltung von Schnittstellen
    7. Refactoring
    8. Entwicklungsplan
    9. Docstring
    10. Debugging
    11. Glossar
    12. Übungen
  10. 5 Bedingungen und Rekursion
    1. Floor-Division und Modulo
    2. Boolesche Ausdrücke
    3. Logische Operatoren
    4. Bedingte Ausführung
    5. Alternativer Programmablauf
    6. Verkettete Bedingungen
    7. Verschachtelte Bedingungen
    8. Rekursion
    9. Stapeldiagramme für rekursive Funktionen
    10. Endlos-Rekursion
    11. Tastatureingaben
    12. Debugging
    13. Glossar
    14. Übungen
  11. 6 Funktionen mit Rückgabewert
    1. Rückgabewerte
    2. Inkrementelle Entwicklung
    3. Funktionskomposition
    4. Boolesche Funktionen
    5. Mehr Rekursion
    6. Vertrauensvorschuss
    7. Noch ein Beispiel
    8. Typprüfung
    9. Debugging
    10. Glossar
    11. Übungen
  12. 7 Iteration
    1. Mehrfache Zuweisungen
    2. Variablen aktualisieren
    3. Die while-Anweisung
    4. break
    5. Quadratwurzeln
    6. Algorithmen
    7. Debugging
    8. Glossar
    9. Übungen
  13. 8 Strings
    1. Ein String ist eine Folge
    2. len
    3. Traversierung mit einer Schleife
    4. String-Teile
    5. Strings sind unveränderbar
    6. Suchen
    7. Schleifen und Zähler
    8. String-Methoden
    9. Der in-Operator
    10. String-Vergleich
    11. Debugging
    12. Glossar
    13. Übungen
  14. 9 Fallstudie: Wortspiele
    1. Wortlisten einlesen
    2. Übungen
    3. Suchen
    4. Schleifen mit Indizes
    5. Debugging
    6. Glossar
    7. Übungen
  15. 10 Listen
    1. Eine Liste ist eine Sequenz
    2. Listen können geändert werden
    3. Listen durchlaufen
    4. Operationen mit Listen
    5. Listen-Slices
    6. Methoden für Listen
    7. Map, Filter und Reduktion
    8. Elemente löschen
    9. Listen und Strings
    10. Objekte und Werte
    11. Aliasing
    12. Listen als Argument
    13. Debugging
    14. Glossar
    15. Übungen
  16. 11 Dictionaries
    1. Ein Dictionary ist ein Mapping
    2. Dictionary als Menge von Zählern
    3. Schleifen und Dictionaries
    4. Inverse Suche
    5. Dictionaries und Listen
    6. Memos
    7. Globale Variablen
    8. Debugging
    9. Glossar
    10. Übungen
  17. 12 Tupel
    1. Tupel sind unveränderbar
    2. Tupel-Zuweisung
    3. Tupel als Rückgabewerte
    4. Argument-Tupel mit variabler Länge
    5. Listen und Tupel
    6. Dictionaries und Tupel
    7. Sequenzen mit Sequenzen
    8. Debugging
    9. Glossar
    10. Übungen
  18. 13 Fallstudie: Die Wahl der richtigen Datenstruktur
    1. Häufigkeitsanalyse für Wörter
    2. Zufallszahlen
    3. Worthistogramm
    4. Die häufigsten Wörter
    5. Optionale Parameter
    6. Dictionary-Subtraktion
    7. Zufallswörter
    8. Markov-Analyse
    9. Datenstrukturen
    10. Debugging
    11. Glossar
    12. Übungen
  19. 14 Dateien
    1. Persistenz
    2. Lesen und schreiben
    3. Formatoperator
    4. Dateinamen und Pfade
    5. Ausnahmen abfangen
    6. Datenbanken
    7. Pickling
    8. Pipes
    9. Module schreiben
    10. Debugging
    11. Glossar
    12. Übungen
  20. 15 Klassen und Objekte
    1. Benutzerdefinierte Typen
    2. Attribute
    3. Rechtecke
    4. Instanzen als Rückgabewerte
    5. Objekte sind veränderbar
    6. Kopieren
    7. Debugging
    8. Glossar
    9. Übungen
  21. 16 Klassen und Funktionen
    1. Zeit
    2. Reine Funktionen
    3. Modifizierende Funktionen
    4. Prototyping kontra Planung
    5. Debugging
    6. Glossar
    7. Übungen
  22. 17 Klassen und Methoden
    1. Objektorientierte Programmierung
    2. Objekte ausgeben
    3. Noch ein Beispiel
    4. Ein komplizierteres Beispiel
    5. init-Methode
    6. str-Methode
    7. Operator-Überladung
    8. Dynamische Bindung
    9. Polymorphismus
    10. Schnittstelle und Implementierung
    11. Debugging
    12. Glossar
    13. Übungen
  23. 18 Vererbung
    1. Karten-Objekte
    2. Klassenattribute
    3. Karten vergleichen
    4. Stapel
    5. Kartenstapel ausgeben
    6. Hinzufügen, entfernen, mischen und sortieren
    7. Vererbung
    8. Klassendiagramme
    9. Datenkapselung
    10. Debugging
    11. Glossar
    12. Übungen
  24. 19 Weitere nützliche Python-Features
    1. Bedingte Ausdrücke
    2. List Comprehensions
    3. Generator-Ausdrücke
    4. any und all
    5. Sets
    6. Counter
    7. defaultdict
    8. Benannte Tupel
    9. Schlüsselwort-Argumente einsammeln
    10. Glossar
    11. Übungen
  25. 20 Debugging
    1. Syntaxfehler
    2. Laufzeitfehler
    3. Semantische Fehler
  26. 21 Algorithmenanalyse
    1. Wachstumsordnung
    2. Analyse grundlegender Python-Operationen
    3. Analyse von Suchalgorithmen
    4. Hashtabellen
    5. Glossar
  27. Fußnoten
  28. Index
  29. Über der Autor

Product information

  • Title: Think Python, 2nd Edition
  • Author(s): Allen B. Downey
  • Release date: June 2021
  • Publisher(s): dpunkt
  • ISBN: 9783960091691