E-Learning Place

Lernplattform wird geladen …

Python für Fortgeschrittene: Saubere Programme bauen, Daten auswerten, Code testen und Projekte ausliefern

Python vertiefen: Objekte und Generatoren, Klassen und Dataclasses, Dateien und SQLite, Tests, pandas, Nebenläufigkeit und Pakete.

Dieser Kurs führt dich nach dem Einstieg in 24 Modulen und 96 Lektionen zu professionellem Python. Du verstehst das Objektmodell mit Referenzen und Kopien, setzt Argumente und Rückgabewerte gezielt ein, schreibst Iteratoren, Generatoren, Closures und Decorators und entwirfst eigene Typen mit Dunder-Methoden, Dataclasses, Enum, Typ-Hinweisen, Vererbung, Komposition und Kontextmanagern. Danach arbeitest du mit Dateien und Pfaden, JSON, CSV, TOML und Konfiguration, speicherst Daten in SQLite und rechnest mit Zeitzonen, Decimal und Fraction. Du fängst Ausnahmen gezielt ab, protokollierst mit logging, testest mit unittest, mock und pytest, suchst Fehler mit dem Debugger und misst Laufzeit und Speicher. Du nutzt collections, itertools und heapq, wertest Tabellen mit pandas aus, arbeitest mit Threads, Prozessen und asyncio, baust Pakete mit pyproject.toml, schreibst Kommandozeilenwerkzeuge und setzt zum Abschluss eine Datenpipeline mit Tests um. Jede Lektion beginnt mit einem Praxisproblem, zeigt Programme mit echter Ausgabe, lässt dich in verschiedenen Übungen anwenden und endet mit einem Mini-Fall samt Musterlösung. Alle Beispiele wurden mit Python 3.12, pandas 3.0 und pytest 9 ausgeführt. Quellen sind die offizielle Python-Dokumentation, die Python Enhancement Proposals (PEP) und die Dokumentation von pandas und pytest, jeweils mit Abrufdatum. Alle Personen, Firmen und Zahlen der Beispiele sind erfunden.

Die Kursübersicht enthält 6 Lernfelder und 24 Module. Wähle ein Lernfeld, um seine Module und die Zugangsmöglichkeiten anzusehen.

Lernfelder im Kurs

Python im Detail: Objekte, Funktionen, Iteratoren und Decorators

Das Objektmodell verstehen, Funktionen mit allen Argumentarten schreiben, Generatoren nutzen und Funktionen als Werte weitergeben.

Eigene Typen entwerfen: Klassen, Dataclasses, Vererbung und Kontextmanager

Klassen mit Dunder-Methoden gestalten, Datenmodelle mit Dataclasses und Enum beschreiben, Vererbung abwägen und Ressourcen sicher verwalten.

Daten und Dateien: Pfade, Formate, SQLite und Zeit

Dateien und Pfade sicher handhaben, JSON, CSV und TOML verarbeiten, Daten in SQLite speichern und mit Zeitzonen und exakten Zahlen rechnen.

Zuverlässig programmieren: Ausnahmen, Protokolle, Tests und Leistung

Ausnahmen gezielt behandeln, Programme protokollieren, mit unittest und pytest testen sowie Fehler und Laufzeit systematisch untersuchen.

Daten auswerten und parallel arbeiten: Sammlungen, pandas und Nebenläufigkeit

Sammlungen und Algorithmen wählen, Tabellen mit pandas auswerten und Aufgaben mit Threads, Prozessen und asyncio gleichzeitig ausführen.

Projekte liefern: Pakete, Kommandozeile, Abschlussprojekt und Prüfung

Pakete bauen und verteilen, Kommandozeilenwerkzeuge schreiben, ein Abschlussprojekt umsetzen und die Abschlussprüfung bestehen.

Module und Inhalte

Das Objektmodell: Namen, Referenzen, Veränderlichkeit und Kopien

Lernfeld: Python im Detail: Objekte, Funktionen, Iteratoren und Decorators

Verstehen, wie Namen auf Objekte zeigen, Identität und Gleichheit unterscheiden und flache von tiefen Kopien trennen.

Funktionen im Detail: Argumentarten, *args, **kwargs und Standardwerte

Lernfeld: Python im Detail: Objekte, Funktionen, Iteratoren und Decorators

Parameterarten sicher einsetzen, Argumente entpacken und Standardwerte ohne Nebenwirkungen gestalten.

Iteratoren und Generatoren: Daten Schritt für Schritt verarbeiten

Lernfeld: Python im Detail: Objekte, Funktionen, Iteratoren und Decorators

Das Iterator-Protokoll verstehen, Generatoren mit yield schreiben und grosse Datenmengen speicherschonend verarbeiten.

Funktionen als Werte: Closures, Decorators und functools

Lernfeld: Python im Detail: Objekte, Funktionen, Iteratoren und Decorators

Funktionen weitergeben, Closures und Decorators schreiben und functools für Zwischenspeicher und Teilanwendung nutzen.

Klassen vertiefen: Dunder-Methoden, Vergleiche und Operatoren

Lernfeld: Eigene Typen entwerfen: Klassen, Dataclasses, Vererbung und Kontextmanager

Eigene Typen mit __repr__, __eq__, Ordnung und Operatoren so gestalten, dass sie sich wie eingebaute Typen verhalten.

Dataclasses, Enum und Typ-Hinweise: Datenmodelle klar beschreiben

Lernfeld: Eigene Typen entwerfen: Klassen, Dataclasses, Vererbung und Kontextmanager

Datenmodelle mit dataclass und Enum schreiben und mit Typ-Hinweisen beschreiben, die Werkzeuge prüfen können.

Vererbung oder Komposition: Entwurf, abstrakte Klassen und Protokolle

Lernfeld: Eigene Typen entwerfen: Klassen, Dataclasses, Vererbung und Kontextmanager

Eigene Typen entwerfen, Vererbung gegen Komposition abwägen und Schnittstellen mit abstrakten Klassen und Protokollen festlegen.

Eigenschaften und Kontextmanager: property, with und contextlib

Lernfeld: Eigene Typen entwerfen: Klassen, Dataclasses, Vererbung und Kontextmanager

Attribute mit property schützen und Ressourcen mit eigenen Kontextmanagern und contextlib sicher öffnen und freigeben.

Dateien und Pfade: pathlib, Kodierung, temporäre Dateien und Archive

Lernfeld: Daten und Dateien: Pfade, Formate, SQLite und Zeit

Pfade und Dateien plattformunabhängig bearbeiten, Kodierungen sauber behandeln und temporäre Dateien und Archive nutzen.

Strukturierte Formate: JSON, CSV, TOML und Konfiguration

Lernfeld: Daten und Dateien: Pfade, Formate, SQLite und Zeit

Daten in JSON, CSV und TOML lesen und schreiben, eigene Typen umwandeln und Konfigurationen prüfen und mit Standardwerten laden.

Datenbank mit SQLite: Tabellen, Parameter, Transaktionen und Abfragen

Lernfeld: Daten und Dateien: Pfade, Formate, SQLite und Zeit

Daten mit sqlite3 speichern und abfragen, Parameter sicher übergeben, Transaktionen nutzen und Tabellen verknüpfen.

Zeit und Genauigkeit: Zeitzonen, Zeiträume, Decimal und Fraction

Lernfeld: Daten und Dateien: Pfade, Formate, SQLite und Zeit

Mit Zeitzonen und Zeiträumen rechnen, Geldbeträge exakt mit Decimal berechnen und Brüche mit Fraction verwenden.

Ausnahmen im Detail: Hierarchie, eigene Ausnahmen, Verkettung und finally

Lernfeld: Zuverlässig programmieren: Ausnahmen, Protokolle, Tests und Leistung

Ausnahmen gezielt abfangen, eigene Ausnahmeklassen entwerfen, Ursachen verketten und Aufräumcode mit finally sicherstellen.

Protokollieren mit logging: Stufen, Handler, Formate und Konfiguration

Lernfeld: Zuverlässig programmieren: Ausnahmen, Protokolle, Tests und Leistung

Programme mit dem Modul logging protokollieren, Stufen und Handler wählen und die Ausgabe nach Bedarf konfigurieren.

Automatisch testen: unittest, mock und pytest

Lernfeld: Zuverlässig programmieren: Ausnahmen, Protokolle, Tests und Leistung

Testfälle mit unittest und pytest schreiben, Abhängigkeiten mit mock ersetzen und die Qualität der Tests beurteilen.

Fehler suchen und Leistung messen: pdb, timeit, cProfile und tracemalloc

Lernfeld: Zuverlässig programmieren: Ausnahmen, Protokolle, Tests und Leistung

Fehler mit dem Debugger eingrenzen und Laufzeit und Speicher mit timeit, cProfile und tracemalloc messen statt zu raten.

Sammlungen und Algorithmen: collections, itertools, heapq und Laufzeit

Lernfeld: Daten auswerten und parallel arbeiten: Sammlungen, pandas und Nebenläufigkeit

Die passende Sammlung wählen, mit collections, itertools und heapq arbeiten und die Laufzeit von Lösungen abschätzen.

Tabellen mit pandas: Einlesen, Auswählen, Bereinigen und Umformen

Lernfeld: Daten auswerten und parallel arbeiten: Sammlungen, pandas und Nebenläufigkeit

Tabellen mit pandas einlesen, gezielt auswählen, bereinigen, umformen und typische Fallstricke bei Datentypen vermeiden.

Auswertungen mit pandas: Gruppieren, Verbinden, Pivot und Zeitreihen

Lernfeld: Daten auswerten und parallel arbeiten: Sammlungen, pandas und Nebenläufigkeit

Daten mit pandas gruppieren, verbinden, in Pivot-Tabellen auswerten, Zeitreihen bearbeiten und Ergebnisse prüfen.

Gleichzeitig arbeiten: Threads, Prozesse und asyncio

Lernfeld: Daten auswerten und parallel arbeiten: Sammlungen, pandas und Nebenläufigkeit

Aufgaben mit Threads, Prozessen und asyncio gleichzeitig ausführen und die richtige Technik für die Aufgabe wählen.

Pakete und Abhängigkeiten: pyproject.toml, venv, pip und Veröffentlichung

Lernfeld: Projekte liefern: Pakete, Kommandozeile, Abschlussprojekt und Prüfung

Ein Projekt als Paket mit pyproject.toml aufbauen, Abhängigkeiten verwalten und das Paket bauen und installieren.

Kommandozeilenwerkzeuge: argparse, Exit-Codes, Umgebungsvariablen und subprocess

Lernfeld: Projekte liefern: Pakete, Kommandozeile, Abschlussprojekt und Prüfung

Werkzeuge für die Kommandozeile mit argparse schreiben, Exit-Codes und Umgebungsvariablen nutzen und Programme mit subprocess starten.

Abschlussprojekt: eine Datenpipeline planen, bauen, testen und dokumentieren

Lernfeld: Projekte liefern: Pakete, Kommandozeile, Abschlussprojekt und Prüfung

Eine Datenpipeline von CSV über SQLite zum Bericht planen, in Module gliedern, testen und dokumentieren.

Prüfungsmodul: Fallstudien und Abschlusstest

Lernfeld: Projekte liefern: Pakete, Kommandozeile, Abschlussprojekt und Prüfung

Drei integrierte Fallstudien und eine Abschlussprüfung mit Auswertung, Fehlerprofil und Wiederholungsempfehlung.

Zugang zum Kurs

Mit deinem Gratiskonto stehen dir alle veröffentlichten Selbstlernkurse und Lernspiele offen, ohne Tageslimit. Nach jeder abgeschlossenen Lerneinheit folgt eine Werbepause. Keine Kreditkarte und kein automatisches Abo.

Gratis Kurs auswählen

Ein Premiumzugang umfasst alle veröffentlichten Selbstlernkurse für CHF 19.90 pro Monat oder CHF 179.00 pro Jahr. Monat und Jahr enthalten dieselben Premiumleistungen. Halloween-Aktion: Bei Abschluss bis einschliesslich 24. November 2026 zahlst du CHF 19.90 pro Monat, solange dein Abo ununterbrochen läuft. Diese lebenslange Preisgarantie gilt auch nach Aktionsende bei jeder monatlichen Verlängerung. Ab 25. November 2026 kosten neue Monatsabos CHF 25.00. Monatlich verlängert; zum Ende des bezahlten Monats kündbar. Beim Jahresabo entspricht das CHF 14.92 pro Monat; der volle Jahrespreis wird jährlich bezahlt und automatisch verlängert, zum Ende der bezahlten Laufzeit kündbar. CHF 59.80 (rund 25 %) günstiger als zwölf Monatszahlungen zum aktuellen Monatspreis.

Nach einer Lektion mit bis zu drei Übungen beziehungsweise einer Übungs-, Lernkarten- oder Spielrunde folgt eine Werbepause. Eigenwerbung und verfügbare Google-Anzeigen wechseln sich ab. Unser Video erfordert mindestens 20 Sekunden sichtbarer, aktiver Wiedergabe. Google startet nur nach ausdrücklicher Auswahl und Einwilligung. Ist Google nicht verfügbar oder liegt keine Einwilligung vor, wird Eigenwerbung angeboten. Es gibt kein tägliches Maximum an Werbepausen. Jede bestätigte Werbepause erlaubt die nächste Lerneinheit; Freigaben lassen sich nicht ansammeln. Premium ist werbefrei.

Premium und Bedingungen ansehen