Estoy escribiendo un script que hace algo en un archivo de texto (sin embargo, lo que hace es irrelevante para mi pregunta). Entonces, antes de hacer algo al archivo, quiero verificar si el archivo existe. Puedo hacer esto, no hay problema, pero el problema es más estético.
Aquí está mi código, implementando lo mismo de dos maneras diferentes.
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.
El primer método produce una salida que es en su mayoría trivial, lo único que me importa es que el archivo no existe.
El segundo método devuelve una cadena, es simple.
Mi pregunta es: ¿qué método es mejor para que el usuario sepa que el archivo no existe? Usar el assert
método parece de alguna manera más pitónico.