Lernen, wie ein Informatiker zu denken – der abwechslungsreiche Praxiskurs für Python
- Allen Downey vermittelt Programmiergrundlagen gekonnt mit ausgefeilter und praxiserprobter Didaktik
- Für Programmiereinsteiger:innen in Studium und Beruf
- Fundierte Einführung nicht nur in Python, sondern auch in die Welt der Programmierung
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.
Lernen Sie, wie ein Programmierprofi zu denken! Allen Downey führt Sie nicht nur fundiert in Python ein, sondern leitet Sie auch an, über die Sprachkonstrukte nachzudenken, und vermittelt Ihnen so grundlegende Problemlösungsstrategien der Informatik. Die Kapitel enthalten jeweils ein Glossar der Fachbegriffe sowie Ü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.
- Starten Sie mit den Grundlagen, einschließlich Sprachsyntax und Semantik
- Entwickeln Sie eine klare Vorstellung von den jeweiligen Programmierkonzepten
- Lernen Sie Werte, Variablen, Anweisungen, Funktionen und Datenstrukturen in einer logischen Abfolge kennen
- Entdecken Sie, wie Sie mit Dateien und Datenbanken arbeiten können
- Verstehen Sie Objekte, Methoden und objektorientierte Programmierung
- Wenden Sie Debugging-Techniken an, um Syntax-, Laufzeit- und Semantikfehler zu beheben
- Erforschen Sie Funktionen, Datenstrukturen und Algorithmen anhand aussagekräftiger Beispiele
»Allen Downeys Erklärungen sind kristallklar, seine inspirierten Übungen werden Lernende mit unterschiedlichstem Background begeistern.« – Luciano Ramalho, Thoughtworks
Author(s): Allen B. Downey
Edition: 1
Publisher: Dpunkt.Verlag GmbH
Year: 2021
Language: German
Pages: 286
Tags: Python; Python 3;
Inhalt
Vorwort
Programme entwickeln
Was ist ein Programm?
Python ausführen
Das erste Programm
Arithmetische Operatoren
Werte und Typen
Formale und natürliche Sprachen
Debugging
Glossar
Übungen
Variablen, Ausdrücke und Anweisungen
Zuweisungen
Variablennamen
Ausdrücke und Anweisungen
Skriptmodus
Rangfolge von Operatoren
String-Operationen
Kommentare
Debugging
Glossar
Übungen
Funktionen
Funktionsaufrufe
Mathematische Funktionen
Komposition
Neue Funktionen erstellen
Definition und Verwendung
Programmablauf
Parameter und Argumente
Variablen und Parameter sind lokal
Stapeldiagramme
Funktionen mit und ohne Rückgabewert
Warum Funktionen?
Debugging
Glossar
Übungen
Fallstudie: Gestaltung von Schnittstellen
Das turtle-Modul
Einfache Wiederholung
Übungen
Datenkapselung
Generalisierung
Gestaltung von Schnittstellen
Refactoring
Entwicklungsplan
Docstring
Debugging
Glossar
Übungen
Bedingungen und Rekursion
Floor-Division und Modulo
Boolesche Ausdrücke
Logische Operatoren
Bedingte Ausführung
Alternativer Programmablauf
Verkettete Bedingungen
Verschachtelte Bedingungen
Rekursion
Stapeldiagramme für rekursive Funktionen
Endlos-Rekursion
Tastatureingaben
Debugging
Glossar
Übungen
Funktionen mit Rückgabewert
Rückgabewerte
Inkrementelle Entwicklung
Funktionskomposition
Boolesche Funktionen
Mehr Rekursion
Vertrauensvorschuss
Noch ein Beispiel
Typprüfung
Debugging
Glossar
Übungen
Iteration
Mehrfache Zuweisungen
Variablen aktualisieren
Die while-Anweisung
break
Quadratwurzeln
Algorithmen
Debugging
Glossar
Übungen
Strings
Ein String ist eine Folge
len
Traversierung mit einer Schleife
String-Teile
Strings sind unveränderbar
Suchen
Schleifen und Zähler
String-Methoden
Der in-Operator
String-Vergleich
Debugging
Glossar
Übungen
Fallstudie: Wortspiele
Wortlisten einlesen
Übungen
Suchen
Schleifen mit Indizes
Debugging
Glossar
Übungen
Listen
Eine Liste ist eine Sequenz
Listen können geändert werden
Listen durchlaufen
Operationen mit Listen
Listen-Slices
Methoden für Listen
Map, Filter und Reduktion
Elemente löschen
Listen und Strings
Objekte und Werte
Aliasing
Listen als Argument
Debugging
Glossar
Übungen
Dictionaries
Ein Dictionary ist ein Mapping
Dictionary als Menge von Zählern
Schleifen und Dictionaries
Inverse Suche
Dictionaries und Listen
Memos
Globale Variablen
Debugging
Glossar
Übungen
Tupel
Tupel sind unveränderbar
Tupel-Zuweisung
Tupel als Rückgabewerte
Argument-Tupel mit variabler Länge
Listen und Tupel
Dictionaries und Tupel
Sequenzen mit Sequenzen
Debugging
Glossar
Übungen
Fallstudie: Die Wahl der richtigen Datenstruktur
Häufigkeitsanalyse für Wörter
Zufallszahlen
Worthistogramm
Die häufigsten Wörter
Optionale Parameter
Dictionary-Subtraktion
Zufallswörter
Markov-Analyse
Datenstrukturen
Debugging
Glossar
Übungen
Dateien
Persistenz
Lesen und schreiben
Formatoperator
Dateinamen und Pfade
Ausnahmen abfangen
Datenbanken
Pickling
Pipes
Module schreiben
Debugging
Glossar
Übungen
Klassen und Objekte
Benutzerdefinierte Typen
Attribute
Rechtecke
Instanzen als Rückgabewerte
Objekte sind veränderbar
Kopieren
Debugging
Glossar
Übungen
Klassen und Funktionen
Zeit
Reine Funktionen
Modifizierende Funktionen
Prototyping kontra Planung
Debugging
Glossar
Übungen
Klassen und Methoden
Objektorientierte Programmierung
Objekte ausgeben
Noch ein Beispiel
Ein komplizierteres Beispiel
init-Methode
str-Methode
Operator-Überladung
Dynamische Bindung
Polymorphismus
Schnittstelle und Implementierung
Debugging
Glossar
Übungen
Vererbung
Karten-Objekte
Klassenattribute
Karten vergleichen
Stapel
Kartenstapel ausgeben
Hinzufügen, entfernen, mischen und sortieren
Vererbung
Klassendiagramme
Datenkapselung
Debugging
Glossar
Übungen
Weitere nützliche Python-Features
Bedingte Ausdrücke
List Comprehensions
Generator-Ausdrücke
any und all
Sets
Counter
defaultdict
Benannte Tupel
Schlüsselwort-Argumente einsammeln
Glossar
Übungen
Debugging
Syntaxfehler
Laufzeitfehler
Semantische Fehler
Algorithmenanalyse
Wachstumsordnung
Analyse grundlegender Python-Operationen
Analyse von Suchalgorithmen
Hashtabellen
Glossar
Index