Ich schreibe ein Skript, das etwas mit einer Textdatei macht (was es tut, ist für meine Frage jedoch irrelevant). Bevor ich also etwas mit der Datei anfange, möchte ich überprüfen, ob die Datei existiert. Ich kann das, kein Problem, aber das Problem ist mehr das der Ästhetik.
Hier ist mein Code, der dasselbe auf zwei verschiedene Arten implementiert.
def modify_file(filename):
assert os.path.isfile(filename), 'file does NOT exist.'
Traceback (most recent call last):
File "clean_files.py", line 15, in <module>
print(clean_file('tes3t.txt'))
File "clean_files.py", line 8, in clean_file
assert os.path.isfile(filename), 'file does NOT exist.'
AssertionError: file does NOT exist.
oder:
def modify_file(filename):
if not os.path.isfile(filename):
return 'file does NOT exist.'
file does NOT exist.
Die erste Methode erzeugt eine Ausgabe, die meistens trivial ist. Das einzige, was mich interessiert, ist, dass die Datei nicht existiert.
Die zweite Methode gibt einen String zurück, es ist einfach.
Meine Fragen sind: Welche Methode ist besser, um den Benutzer wissen zu lassen, dass die Datei nicht vorhanden ist? Die assert
Methode scheint irgendwie pythonischer zu sein.