Python Packaging und Tooling - Moderne Projektstrukturierung

Total time
Location
At location, Online
Starting date and place

Python Packaging und Tooling - Moderne Projektstrukturierung

GFU Cyrus AG
Logo GFU Cyrus AG
Provider rating: starstarstarstarstar_border 7.9 GFU Cyrus AG has an average rating of 7.9 (out of 13 reviews)

Need more information? Get more details on the site of the provider.

Starting dates and places
placeKöln
16 Mar 2026 until 18 Mar 2026
computer Online: Zoom
16 Mar 2026 until 18 Mar 2026
placeKöln
8 Jun 2026 until 10 Jun 2026
computer Online: Zoom
8 Jun 2026 until 10 Jun 2026
placeKöln
14 Sep 2026 until 16 Sep 2026
computer Online: Zoom
14 Sep 2026 until 16 Sep 2026
placeKöln
14 Dec 2026 until 16 Dec 2026
computer Online: Zoom
14 Dec 2026 until 16 Dec 2026
Description

Schulungen der Extraklasse ✔ Durchführungsgarantie ✔ Trainer aus der Praxis ✔ Kostenfreies Storno ✔ 3=2 Kostenfreie Teilnahme für den Dritten ✔ Persönliche Lernumgebung ✔ Kleine Lerngruppen

Seminarziel

Sie beherrschen nach dem Seminar den vollständigen Workflow moderner Python-Projektorganisation - von der Wahl der passenden Projektstruktur über das Management von Abhängigkeiten bis hin zur Veröffentlichung auf PyPI.
Sie setzen Werkzeuge wie uv, pip-tools, Ruff und Pre-commit gezielt ein, um saubere, konsistente und automatisierte Entwicklungsprozesse zu etablieren.
Darüber hinaus lernen Sie, wie Sie Lockfiles erstellen, Systemabhängigkeiten kontrollieren, Python-Pakete testen und über GitHub Actions oder Tox automatisiert veröffentlichen - sowohl intern als auch öffentlich.
Ihre Projekte werden dadurch wartbar, reproduzierbar und optimal für die Teamarbeit vorbereitet.

Inhalt

Read the complete description

Frequently asked questions

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.

Schulungen der Extraklasse ✔ Durchführungsgarantie ✔ Trainer aus der Praxis ✔ Kostenfreies Storno ✔ 3=2 Kostenfreie Teilnahme für den Dritten ✔ Persönliche Lernumgebung ✔ Kleine Lerngruppen

Seminarziel

Sie beherrschen nach dem Seminar den vollständigen Workflow moderner Python-Projektorganisation - von der Wahl der passenden Projektstruktur über das Management von Abhängigkeiten bis hin zur Veröffentlichung auf PyPI.
Sie setzen Werkzeuge wie uv, pip-tools, Ruff und Pre-commit gezielt ein, um saubere, konsistente und automatisierte Entwicklungsprozesse zu etablieren.
Darüber hinaus lernen Sie, wie Sie Lockfiles erstellen, Systemabhängigkeiten kontrollieren, Python-Pakete testen und über GitHub Actions oder Tox automatisiert veröffentlichen - sowohl intern als auch öffentlich.
Ihre Projekte werden dadurch wartbar, reproduzierbar und optimal für die Teamarbeit vorbereitet.

Inhalt

  • Tag 1 - Grundlagen, Imports, Pakete und Module
    • Der Python-Importmechanismus: import, from, Star-Import
    • Namespaces verstehen: Was ist ein Namespace?
    • Modulauflösung mit sys.path und sys.modules
    • Das site Modul
    • Python-Import-Reihenfolge nach PEP 8
    • Das Modulobjekt und seine Attribute
    • Praxis: Settings-Modul als Konfiguration verwenden
    • Modul-Loader und Finder
    • __name__ == "__main__" - Bedeutung und Verwendung
    • Modularten: Standardbibliothek, Drittanbieter, eigene Module, C-Extensions
    • Modul-Docstring: Bedeutung und Nutzung
    • Verschachtelte Pakete & relative Importe
    • __init__.py und Paketstruktur
    • Python Programm im Modul-Kontext starten
    • Star-Imports und __all__
    • Öffentliche vs. private Module (Best Practices)
    • Namespace Packages (optional)
    • __pycache__ und .gitignore: sinnvolle Konfiguration
    • importlib: Dynamisches Laden von Modulen
    • Übungsprojekt
  • Tag 2 - Abhängigkeiten und Projektlayouts
    • Was sind Abhängigkeiten und warum ist Dependency Management so schwierig?
    • pip - Grundlagen, Befehle und der Python Package Index
    • Benutzer- und globale Installationen
    • Nachteile globaler Installationen
    • Virtuelle Umgebungen, Einrichtung und Analyse von venv
    • Paket- und Projektlayouts verstehen: Flat vs. src, Wiederverwendbarkeit und Fehlervermeidung
    • Einführung in pyproject.toml: Metadaten, Dependencies und Build-System
    • Lokale Installation, editierbare Installation
    • Testorganisation in Projekten: pytest und Strukturierung
    • Praxis-Workshop: Zwei Projekte lokal installieren und importieren
    • Abhängigkeitsmanagement in Projekten: Trennung von Runtime und Dev-Dependencies
    • Einführung in pip-tools und Lockfiles
    • Umgebungsvariablen & .env-Dateien mit python-dotenv
    • Git-Konfiguration: .gitignore und .gitattributes für Python-Projekte
    • Linter und Formatter: Einführung und Best Practices
    • Black, Isort, Bandit (Security), Pylint
    • Ruff: PEP 8-konformes Linting und Konfiguration (Workshop Demo)
    • Übungsprojekte
  • Tag 3 - Poetry, uv & Veröffentlichung auf PyPI
    • Was ist ein Wheel
    • Installationsquellen: Lokal, Wheels, GitHub, PyPI, TestPyPI, tar.gz
    • Einführung in uv: Projektinitialisierung und Dependency Management
    • uv Deep Dive: Dependencies, optionale Dependencies, Dependency Groups
    • uv pip API
    • uv Workspaces
    • Überblick: Build-Systeme in Python, Motivation und Vergleich
    • Paketveröffentlichung: Upload auf TestPyPI und PyPI mit uv
    • Version Bumping und Git Tags
    • Wie halte ich Version und Release-Historie konsistent?
    • Projekt-Metadaten in pyproject.toml: sinnvolle Felder und Best Practices für Veröffentlichungen
    • Einführung in Tox: Tests und Umgebungen automatisieren
    • Continuous Integration / Continuous Delivery: GitHub CI/CD-Pipeline für Python-Projekte
    • Jobs und Steps einer CI/CD-Pipeline mit GitHub Actions
    • Environment Variablen und Secrets: sichere Handhabung in CI/CD-Pipelines
    • Pre-commit Hooks für Qualitätssicherung: Ruff und Tests vor jedem Commit
    • Praxis-Workshop: CI/CD-Pipeline
There are no reviews yet.
Share your review
Do you have experience with this course? Submit your review and help other people make the right choice. As a thank you for your effort we will donate $1.- to Stichting Edukans.

There are no frequently asked questions yet. If you have any more questions or need help, contact our customer service.