vorhandene_datei_entscheidung:DateiEntscheidung=None)->DateipruefErgebnis:#Rückgabetypannotation; "Die Funktion "pruefe" gibt ein Objekt vom Typ "DateipruefErgebnis" zurück
# 1. Prüfe, ob das Eingabefeld leer ist
ifnotpfadorpfad.strip()=="":#wenn der angegebene Pfad leer oder ungültig ist:
ifleer_modus==LeererPfadModus.VERBOTEN:#wenn der Modus "verboten" vorgegeben ist, gib zurück, dass der Test fehlgeschlagen ist
returnDateipruefErgebnis(
erfolgreich=False,
fehler=["Kein Pfad angegeben."]
)
elifleer_modus==LeererPfadModus.NUTZE_STANDARD:#wenn der Modus "Nutze_Standard" vorgegeben ist...
ifnotplugin_pfadornotstandardname:#wenn kein gültiger Pluginpfad angegeben ist oder die Standarddatei fehlt...
returnDateipruefErgebnis(
erfolgreich=False,
fehler=["Standardpfad oder -name fehlen."]#..gib zurück, dass der Test fehlgeschlagen ist
)
pfad=os.path.join(plugin_pfad,standardname)#...wenn es Standarddatei und Pluginpfad gibt...setze sie zum Pfad zusammen...
elifleer_modus==LeererPfadModus.TEMPORAER_ERLAUBT:#wenn der Modus "temporär" vorgegeben ist,...
returnDateipruefErgebnis(#...gib zurück, dass das Prüfergebnis erfolgreich ist (Entscheidung, ob temporör gearbeitet werden soll oder nicht, kommt woanders)
erfolgreich=True,
pfad=None
)
# 2. Existiert die Datei bereits?
ifos.path.exists(pfad):#wenn die Datei vorhanden ist...
ifnotvorhandene_datei_entscheidung:#aber noch keine Entscheidung getroffen ist...
returnDateipruefErgebnis(
erfolgreich=True,#ist die Prüfung erfolgreich, aber es muss noch eine Entscheidung verlangt werden
pfad=pfad,
entscheidung=None,
fehler=["Datei existiert bereits – Entscheidung ausstehend."]