Einkaufswagen
Loading
Nur noch -1 verfügbar

Eigene Python-Pakete erstellen und auf PyPI veröffentlichen

Aktionspreis
€12.99 (25 % Rabatt)
€9.74
Zum Einkaufswagen hinzugefügt

Eigene Python-Pakete erstellen und auf PyPI veröffentlichen


Ein praxisnaher Leitfaden zum Erstellen, Testen und Veröffentlichen von wiederverwendbarem Python-Code für die Community


Inhaltsverzeichnis


Kapitel 1: Warum ein eigenes Python-Paket erstellen?


  • Wiederverwendbarkeit und Modularität
  • Vorteile für Teams, Open Source und persönliche Projekte
  • Überblick: Von der Idee zum installierbaren Paket

Kapitel 2: Vorbereitung des Projekts


  • Verzeichnisstruktur nach Best Practices
  • src/-Layout vs. Flat Layout
  • Namensgebung und Lizenzwahl
  • Mini-Projekt: Einfaches Werkzeug als Paketidee entwickeln

Kapitel 3: Die pyproject.toml-Datei verstehen


  • Moderne Projektbeschreibung nach PEP 518 und PEP 621
  • Pflicht- und optionale Felder
  • Beispielkonfiguration Schritt für Schritt
  • Alternativen: setup.py, setup.cfg

Kapitel 4: Abhängigkeiten definieren


  • install_requires vs. optional-dependencies
  • Entwicklungsabhängigkeiten und Extras
  • Mini-Projekt: Paket mit Abhängigkeit zu requests

Kapitel 5: Metadaten und Dokumentation


  • Projektbeschreibung für PyPI, README.md, LICENSE, CHANGELOG
  • long_description und Inhalt für die Projektseite
  • Mini-Projekt: Dokumentation mit Markdown und reStructuredText

Kapitel 6: Tests und Qualitätssicherung


  • Tests mit pytest oder unittest
  • tox und coverage einbinden
  • Linter wie flake8, black, mypy nutzen
  • Mini-Projekt: Testfall für Funktionsbibliothek schreiben

Kapitel 7: Paket bauen mit build und twine


  • python -m build: sdist und wheel erzeugen
  • Paket lokal installieren und testen
  • Vorbereitung für die Veröffentlichung

Kapitel 8: Veröffentlichen auf PyPI


  • Account auf https://pypi.org anlegen
  • Hochladen mit twine upload
  • Fehlerquellen beim Upload vermeiden
  • Mini-Projekt: Erstes Paket auf TestPyPI und dann auf PyPI veröffentlichen

Kapitel 9: Versionierung und Releases verwalten


  • Semantische Versionierung (SemVer)
  • Git-Tags und automatisierte Releases
  • Versionen in __init__.py oder pyproject.toml pflegen

Kapitel 10: Pflege, Feedback und Weiterentwicklung


  • Issue-Tracking und Pull Requests auf GitHub
  • Nutzerfeedback integrieren
  • Abwärtskompatibilität und Deprecations
  • Automatisierung mit CI/CD (GitHub Actions, GitLab CI)

Anhang A: Beispielstruktur eines vollständigen Pakets



/mein_paket/

├── src/

│ └── mein_paket/

│ ├── __init__.py

│ └── tools.py

├── tests/

│ └── test_tools.py

├── pyproject.toml

├── README.md

├── LICENSE

└── .gitignore


📚 Anhang B: Nützliche Tools und Links




Anhang C: Übungsaufgaben mit Lösungen


  • Einfaches Tool als Paket strukturieren
  • Metadata-Dateien erstellen und validieren
  • Paket lokal testen und veröffentlichen
  • Lösungen mit Schritt-für-Schritt-Erklärung


Sie erhalten die folgenden Dateien:
  • EPUB (115KB)
  • PDF (9MB)