Seminare
Seminare

Python Packaging und Tooling - Moderne Projektstrukturierung

Seminar - GFU Cyrus AG

Sie beherrschen nach dem Seminar den vollständigen Workflow moderner Python-Projektorganisation - von der Wahl der Projektstruktur über die Verwaltung von Abhängigkeiten bis hin zur Veröffentlichung auf PyPI. Sie vergleichen Werkzeuge wie pip-tools, poetry und uv und setzen diese situationsgerecht ein. Darüber hinaus lernen Sie, wie Sie Lockfiles erstellen, Systemabhängigkeiten handhaben, Python-Pakete testen und automatisiert veröffentlichen - sowohl intern als auch öffentlich. Ihre Projekte werden damit wartbar, reproduzierbar und teamfähig.
Termin Ort Preis*
firmenintern auf Anfrage auf Anfrage
*Alle Preise verstehen sich inkl. MwSt.

Detaillierte Informationen zum Seminar

Inhalte:
  • Tag 1 - Grundlagen, Imports & Projektstruktur
    • Der Python-Importmechanismus: import, from, __init__.py
    • sys.path, sys.modules: Modulauflösung und Namespaces verstehen
    • Paketarten & Projektlayouts: Flat vs. src, Wiederverwendbarkeit
    • Aufbau von Libraries: Struktur für produktionsreife Pakete
    • .gitignore & __pycache__: Sinnvolle Konfiguration
    • Virtuelle Umgebungen: Einrichtung und Analyse von venv
    • Einführung pyproject.toml: Die zentrale Konfigurationsdatei verstehen

  • Tag 2 - Reproduzierbare Umgebungen mit pip-tools & Co.
    • pip-tools in der Praxis: pip-compile, pip-sync, Lockfiles nutzen
    • Erstellung & Pflege: requirements.in und saubere requirements.txt
    • Toolvergleich: pip vs. pip-tools vs. poetry vs. uv
    • Abhängigkeits-Management: Trennung von Runtime & Dev
    • Codequalität sicherstellen: ruff für Linting, Formatierung, Imports
    • Umgebungsvariablen: .env-Dateien mit python-dotenv
    • Eigene Module paketieren: Struktur für interne Verteilung
    • Testorganisation: Unittests und Strukturierung in Projekten

  • Tag 3 - Poetry, uv & Veröffentlichung auf PyPI
    • Einstieg mit poetry: Projektinitialisierung, Dependency-Management
    • Lockfiles in poetry: Verwendung von poetry.lock
    • Poetry-Workflows: poetry run, poetry shell, Extras nutzen
    • Paketveröffentlichung: Upload mit Twine auf TestPyPI und PyPI
    • uv kennenlernen: Der moderne, schnelle Package Installer
    • Systemabhängigkeiten managen: Umgang mit nativen C-Bibliotheken
    • Externe Quellen: Installation direkt aus GitHub-Repositories
    • Build-Prozesse automatisieren: Best Practices für CI/CD und Deployment
    • Build-Tools im Vergleich: hatchling, setuptools, poetry im Überblick

Zielgruppe:
  • Python-Entwickler:innen, die produktionsreife Projekte umsetzen wollen
  • DevOps Engineers, die Python in Build- und Deploymentprozesse integrieren
  • Data Scientists, die reproducible Environments in Teams benötigen
  • Technische Projektleiter:innen mit Fokus auf Softwarequalität und Build-Transparenz
  • Software-Architekt:innen, die wartbare und testbare Python-Pakete aufbauen möchten
  • Alle, die bestehende requirements.txt-Setups modernisieren wollen



  • Teilnahmevoraussetzungen:
    • Sie verfügen über Grundkenntnisse in Python
      , z. B. beim Arbeiten mit Funktionen, Modulen und Imports
    • Sie haben bereits einfache Projekte mit pip install umgesetzt
    • Sie benötigen keine Vorkenntnisse in pyproject.toml, poetry oder pip-tools
    • Das Seminar richtet sich an Einsteiger im Bereich Packaging ebenso wie an Umsteiger und Fortgeschrittene

Seminarkennung:
S5319
Nach unten
Nach oben
Wir setzen Analyse-Cookies ein, um Ihre Zufriedenheit bei der Nutzung unserer Webseite zu verbessern. Diese Cookies werden nicht automatisiert gesetzt. Wenn Sie mit dem Einsatz dieser Cookies einverstanden sind, klicken Sie bitte auf Akzeptieren. Weitere Informationen finden Sie hier.
Akzeptieren Nicht akzeptieren









Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha



Bei der Verarbeitung Ihrer personenbezogenen Daten im Zusammenhang mit der Kontaktfunktion beachten wir die gesetzlichen Bestimmungen. Unsere ausführlichen Datenschutzinformationen finden Sie hier. Bei der Kontakt-Funktion erhobene Daten werden nur an den jeweiligen Anbieter weitergeleitet und sind nötig, damit der Anbieter auf Ihr Anliegen reagieren kann.







Um Spam abzuwehren, geben Sie bitte die Buchstaben auf dem Bild in das Textfeld ein:

captcha