Edocti
Fortgeschrittene technische Ausbildung für den modernen Softwareingenieur
Edocti Training

Fortgeschrittene Python-Themen

Fortgeschritten
21 h
4.7 (522 Bewertungen)
Fortgeschrittene Python-Themen

Advanced Python im Detail: Moderne Features von Python 3 für robuste, saubere Anwendungen meistern.

Hands-on mit Generatoren, Coroutines, Typing, Context Managern und Dekoratoren.

Best Practices zu Concurrency, Design Patterns und Performance-Tuning anwenden.

Praktische Erfahrung sammeln durch ~70% Coding-Labs und Projektübungen.

Nutzen: Zuverlässige, wartbare Python-Systeme für Produktion entwickeln.

Für wen: gedacht für Personen mit Python-Grundlagen, die fortgeschrittene Skills suchen.

Optionale Themen: Metaprogrammierung, Async-Frameworks und Packaging.

Curriculum

Einführung
  • Setup und erste Codezeilen
  • Python‑Syntax — Grundlagen
  • Python 2 → 3 Unterschiede (kurz)
  • Wichtige Datentypen & Typing‑Mechanismus (str/bytes/unicode, Zahlen, Sequenzen)
  • I/O‑Basics in Python
More I/O
  • Arbeiten mit CSV, XML, JSON, PDF
  • File Locks; Seeking; sicheres Schreiben (Tempfiles) und einfache Rollback‑Muster
  • Binärdateien und Serialisierung (struct, pickle); Endianness und Framing
  • pathlib‑Essentials für Files & Paths (Ergänzung)
Praktische funktionale Programmierung in Python
  • First‑Class Functions; map/reduce/filter (Hinweise 2 vs 3)
  • List/Dict/Set Comprehensions; Generator Expressions
  • Lambdas; Closures; Partial Application
  • Function Annotations; kurze Hinweise zum Type Checking
  • Iterators & itertools (Ergänzung)
Praktisches OOP in Python
  • Klassen/Objekte; Vererbung & Multiple Inheritance
  • Spezielle Methoden; Operator Overloading; Functors
  • Decorators für Methoden und Klassen
  • Intention von ‚Const‑ness‘; Abstract Base Classes
  • Metaclasses (Überblick) und dataclasses (Ergänzung)
  • Descriptors & Properties (Ergänzung)
Verschiedene Themen
  • Generatoren, Immutability‑Ideen, Thunks
  • Regular Expressions
  • Multi‑Threading: Grundlagen von Concurrency & Synchronisation; Queues und Patterns
  • Networking: von Sockets zu Message Systems
  • Asyncio‑Überblick (Ergänzung): Event Loop, Tasks vs. Threads; wann welches
Environment setup
  • pip, PyPI, virtualenv/venv; conda (wo es passt)
  • setuptools‑Basics und Dependency Pinning
  • pyproject.toml (Ergänzung): moderne Builds im Überblick
  • Reproduzierbarkeit: Constraints/Lock Files (kurz)
Packages erstellen & externe Bibliotheken einbinden
  • Eigenes Package veröffentlichen; Versionierung & Layout
  • Native Libraries einbinden: ctypes/cffi, pybind11 (Überblick)
  • Wheels und manylinux (Überblick)
Ad‑hoc‑Lösung für ein nutzerdefiniertes Problem
  • Zeitfenster für Projektthema (z. B. Hardware‑Geräte steuern, PoE, Telemetrie‑Parsing)

Optionale Module

Optional — Testing & Quality (kompakt)
  • pytest‑Basics; Fixtures; Parametrisierung
  • mypy/Typing Hints; ruff/black; pre‑commit (Kurzüberblick)

Kursablauf

  • Part 1: 09:00–10:30
  • Break: 10:30–10:45
  • Part 2: 10:45–12:15
  • Lunch break: 12:15–13:15
  • Part 3: 13:15–15:15
  • Break: 15:15–15:30
  • Part 4: 15:30–17:30