Sto scrivendo una sceneggiatura che fa qualcosa in un file di testo (ciò che fa è irrilevante per la mia domanda). Quindi, prima di fare qualcosa per il file, voglio verificare se il file esiste. Posso farlo, nessun problema, ma il problema è più quello dell'estetica.
Ecco il mio codice, implementando la stessa cosa in due modi diversi.
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.
o:
def modify_file(filename):
if not os.path.isfile(filename):
return 'file does NOT exist.'
file does NOT exist.
Il primo metodo produce un output per lo più banale, l'unica cosa che mi interessa è che il file non esista.
Il secondo metodo restituisce una stringa, è semplice.
La mia domanda è: quale metodo è migliore per far sapere all'utente che il file non esiste? L'uso del assert
metodo sembra in qualche modo più pitonico.