2009-10-12 25 views

cevap

44

Kullanım shutil.rmtree:

import shutil 

shutil.rmtree(path) 

işlemek ve/veya hataları görmezden nasıl ayrıntıları için the documentation bakınız.

+13

Dizinde dosyalar varsa, bu benim için başarısız olur. Tıknazın yazısı. – CornSmith

7

Bunun için shutil.rmtree

shutil.rmtree(path[, ignore_errors[, onerror]])

Delete an entire directory tree; path must point to a directory (but not a symbolic link to a directory). If ignore_errors is true, errors resulting from failed removals will be ignored; if false or omitted, such errors are handled by calling a handler specified by onerror or, if that is omitted, they raise an exception.

32

standart kütüphane içerir shutil.rmtree istiyorum. Varsayılan olarak,

shutil.rmtree(path) # errors if dir not empty 

OSError: [Errno 66] Directory not empty: <your/path> verecektir.

Sen hatayı görmezden gelerek yine dizini ve içeriğini silebilirsiniz:

shutil.rmtree(role_fs_path, ignore_errors=True) 

Ayrıca onerrror=<some function(function, path, excinfo)> geçirerek daha sofistike hata işleme gerçekleştirebilir.

+4

'ignore_errors = True', dizinin kaldırılmadığı anlamına gelir. – ostrokach

+0

ignore_errors = Doğru olan klişe –

+0

Benim için çalışıyor. – Jerome