Fähigkeiten, die Sie lernen werden
Python 3 Grundlagen
Datenstrukturen & Collections
File I/O & Serialisierung
Objektorientierte Programmierung
Funktionale Techniken
Exception Handling
Virtuelle Umgebungen
Testing mit Pytest
Curriculum
Einführung in Python
- Installation, REPL, erste Zeilen; Skripte ausführen
- Syntax‑Essentials und ‚pythonic‘ Mindset (Lesbarkeit, EAFP vs LBYL)
- Grundtypen: numbers, bool, str vs bytes (Unicode‑Basics), lists/tuples/sets/dicts, Slicing & Comprehensions
- Exceptions und Fehlerbehandlung
- I/O‑Basics: open/read/write mit Context Managers; Pfade mit pathlib
More I/O (Dateien & Formate)
- CSV, JSON und einfache XML; kurzer Überblick zu PDF/Text
- Binäres I/O, Seeking und File Locking (kurz)
- Arbeiten mit Datum/Zeit (datetime) und Zeitzonen (Überblick)
Funktionale Programmierung in der Praxis
- Funktionen als Werte; lambda, map/filter (wo sinnvoll)
- Comprehensions und Generator Expressions
- Closures, Partials und kleine Pipelines
- Iterators & Generators: yield, yield from
Praktisches OOP in Python
- Klassen & Objekte; Dunder‑Methoden; Properties
- Komposition und Vererbung (single & multiple)
- Data Classes für einfache Datenstrukturen
- Decoratoren für Funktionen/Methoden; einfache Deskriptoren
Verschiedenes (wichtige Tools)
- Reguläre Ausdrücke (re) — praktische Muster
- Concurrency: Intro zu Threading vs Multiprocessing; wann asyncio
- Netzwerk‑Basics: Sockets und ein kleines Client/Server‑Beispiel
Environment‑Setup & Workflow
- venv/virtualenv‑Basics; pip und PyPI; requirements.txt vs pyproject.toml (kurz)
- Package Manager: pipx/conda (wo hilfreich)
- Editoren, Linters & Formatter: ruff/flake8, black; Debugging‑Tipps
Packages erstellen & externe Libraries
- Projektstruktur und modules/packages
- Library von PyPI installieren; Doku effizient nutzen
- Intro: eine einfache Library packen (Wheel)
Ad‑hoc‑Lösungen zu Teilnehmer‑Problems
- Mini‑Projekte der Teilnehmenden; geführtes Design & Implementierung
Optionale Module
Optional — Testing & Typing
- pytest‑Basics; einfache Fixtures und Parametrisierung
- Type Hints 101; mypy als Sanity‑Check
Kursablauf
- Teil 1: 09:00–10:30
- Pause: 10:30–10:45
- Teil 2: 10:45–12:15
- Mittagspause: 12:15–13:15
- Teil 3: 13:15–15:15
- Pause: 15:15–15:30
- Teil 4: 15:30–17:30