J'écris un script qui fait quelque chose dans un fichier texte (ce qu'il fait n'est cependant pas pertinent pour ma question). Donc, avant de faire quelque chose au fichier, je veux vérifier si le fichier existe. Je peux le faire, pas de problème, mais le problème est plutôt celui de l'esthétique.
Voici mon code, implémentant la même chose de deux manières différentes.
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.
ou:
def modify_file(filename):
if not os.path.isfile(filename):
return 'file does NOT exist.'
file does NOT exist.
La première méthode produit une sortie qui est principalement triviale, la seule chose qui m'importe, c'est que le fichier n'existe pas.
La deuxième méthode renvoie une chaîne, c'est simple.
Ma question est: quelle méthode est la meilleure pour faire savoir à l'utilisateur que le fichier n'existe pas? L'utilisation de la assert
méthode semble en quelque sorte plus pythonique.