Question

si nous prenons un coup d'oeil à la fonction de copie de fichiers, nous pouvons voir qu'il ya plusieurs exceptions à gérer. Un bon exemple est ici: http://msdn.microsoft.com/en-us /library/9706cfs5.aspx

ma question est de savoir si j'utilise python shutil copy2, que dois-je faire attention à faire face à diverses exceptions (fichier source introuvable, accès non autorisé, etc.)?

par exemple.

def copy_file (self):   
    if not os.path.isdir(dest_path):
        os.makedirs(dest_path)
    shutil.copy2(src_path, dest_path)

Que dois-je faire pour la fonction ci-dessus?

Était-ce utile?

La solution

Vous pouvez juste besoin gérer l'exception de IOError qui peut être due à des autorisations ou question du nom de destination non valide.

try:
    shutil.copy(src,dst)
except IOError as e:
    print e

Les autres exceptions mentionnées dans l'article MSDN semble tomber sous le même IOError en python. Le FileNotFound et DirectoryNotFound ne sont pas vraiment applicables à shutil.copy va créer la destination si elle existe déjà. Aussi, je trouve que cela se produise de OSError sont également à distance ce dans le cas.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top