Einführung in die Arbeitsumgebung
- Visual Studio Code
- Jupyter-Notebook
Einführung in die Daten-Strukturen
- Datentypen, Klassen, Variablen, Objekte
- Listen und Tupel
- Strings und Stringfunktionen
- Sortierung unter Benutzung von sort und sorted
- Slicing
- Iteratoren und iterierbar
- Dictionaries
- Sets und Frozensets
- Konvertierungen zwischen Datentypen, z.B. Integer nach Strings oder Dictionaries in Listen und umgekehrt
- Probleme durch Referenzierung und In-Place-Methoden
- Copy und Deepcopy
Kontrollstrukturen
- Verzweigungen
- Schleifen: while- und for-Schleife
- for-Schleife à la C bzw. C++ in Python
- continue, break und else in Schleifen
- pass-Anweisung
- Funktionen: Definition und Aufruf
- Globale und lokale Parameter
- Positionsparameter und Schlüsselwortparameter
- "*"- und "**"-Parameter
Ein- und Ausgabe
- Interaktive Eingabe mittels input
- Formatierte Ausgabe: der traditionelle Weg mit "Stringmodulo"
- Der pythonische Weg: format-Methode und f-Strings
- Dateien lesen und schreiben
Arbeiten mit Modulen
- Standardmodule
- Einbindung und Benutzung von Standardmodulen
- Namensräume und Gültigkeitsbereiche
- Schreiben eigener Module
- Code-Dokumentation und Help-Funktion
Fortgeschrittene Themen
- Rekursive Funktionen
- Komplexitätsprobleme bei rekursiven Funktionen
- Memoisation
- Dekorateure
- Lambda-Operator, map, filter und reduce
- Iteratoren / Listen-, Mengen und Generator-Abstraktion
- * und ** bei Funktionsdefinition und in Funktionsaufrufen
- Seiteneffekte in Funktionsdefinitionen
- Iteratoren und Generatoren
- Kontext-Managers
- Itertools
- Sortierung und ’individuelles’ Sortieren mit ’key’-Funktionen
Fehler und Ausnahmen
- Syntaxfehler und SemantikfehlerAusnahmen
- Ausnahmebehandlung
- Erzeugen von Ausnahmen
- finally zum Aufrämen
Objektorientierte Programmierung
- "Alles Klassen"
- Klassen, Instanzen und Objekte
- Die einfachst mögliche Klassendefinition
- Instanz- und Klassenattribute, Properties
- privat, geschützt und öffentlich
- Magische Methoden und Operator-Überladung
- Vererbung
- Mehrfachvererbung
Persistente Datenhaltung
- Pickle
- Shelve
- Datenbankanbindungen
Optional: Text- und Stringverarbeitung
- Wichtige Stringmethoden: count, index, find, rfind, replace, split, rsplit und andere
- Benutzung regulärer Ausdrücke in Python
Optional: Schnittstelle zum Betriebssystem
- Schnittstellen zum Betriebssystem
- Forking
- Threads
- Multiprocessing
Optional: Testing
Hinweise
Einführung in die Arbeitsumgebung
- Visual Studio Code
- Jupyter-Notebook
Einführung in die Daten-Strukturen
- Datentypen, Klassen, Variablen, Objekte
- Listen und Tupel
- Strings und Stringfunktionen
- Sorti ...
Mehr Informationen >>