Abschlussprojekt: Ein Verleihprogramm mit dauerhafter Speicherung
Dein Projekt herunterladen und lokal ausführen
Dein Programm und neun Tests gehören jetzt in ein Projekt nur aus Quelldateien, das du außerhalb dieses Arbeitsbereichs ausführen kannst. Vervollständige README.md vor dem Herunterladen, damit die Befehle mit dem Code mitkommen. Es muss angeben, dass Python 3.10 oder neuer erforderlich ist. requirements-dev.txt enthält bereits die exakte Testabhängigkeit pytest==9.1.1; die Anwendung selbst verwendet nur Pythons Standardbibliothek.
Verwende angemeldet die Aktion Download des Arbeitsbereichs und entpacke die ZIP-Datei in einen neuen Ordner. Der verfasste Dateibaum hat genau zehn Dateien:
lending.py
catalog_db.py
catalog_setup.py
catalog_import.py
demo.py
data/items.csv
tests/test_catalog.py
tests/test_lending.py
requirements-dev.txt
README.md
Die ZIP-Datei enthält außerdem die erzeugte PYTHONLAND_README.md, also insgesamt elf Dateien. Sie darf keine Datenbank, .venv, __pycache__, .pytest_cache oder andere erzeugte Datei enthalten. Halte catalog data.db lokal; erstelle sie erst nach dem Entpacken und nur über init.
Nimm unter macOS diese Befehle ohne Aktivierung in README.md auf:
python3 -m venv .venv
.venv/bin/python -m pip install -r requirements-dev.txt
.venv/bin/python lending.py init "catalog data.db"
.venv/bin/python lending.py import-items "catalog data.db" data/items.csv
.venv/bin/python lending.py available "catalog data.db"
.venv/bin/python -m pytest -q -p no:cacheprovider
Unter Linux sind die Befehle identisch:
python3 -m venv .venv
.venv/bin/python -m pip install -r requirements-dev.txt
.venv/bin/python lending.py init "catalog data.db"
.venv/bin/python lending.py import-items "catalog data.db" data/items.csv
.venv/bin/python lending.py available "catalog data.db"
.venv/bin/python -m pytest -q -p no:cacheprovider
Verwende unter Windows PowerShell den passenden Interpreterpfad:
py -m venv .venv
.venv\Scripts\python.exe -m pip install -r requirements-dev.txt
.venv\Scripts\python.exe lending.py init "catalog data.db"
.venv\Scripts\python.exe lending.py import-items "catalog data.db" data\items.csv
.venv\Scripts\python.exe lending.py available "catalog data.db"
.venv\Scripts\python.exe -m pytest -q -p no:cacheprovider
Jede Zeile mit lending.py startet einen separaten Prozess. Deshalb belegt available, dass die von früheren Befehlen erstellten Daten erneut geöffnet werden können. Führe die neun Tests zweimal aus einer frisch entpackten Kopie aus und probiere dann Registrierung, Ausleihe, Aktivität, Rückgabe und Aktivität als separate Aufrufe. Diese Seite kann deinen Computer nicht beobachten oder einen Download bestätigen; das lokale Ergebnis prüfst du selbst.