In this article, we have presented the approach to delete non-empty directory recursively in python easily.
Table of contents:
- Delete Directory recursively in Python
- Complete Code
Delete Directory recursively in Python
Deleting a directory using standard functions or using os module is challenging so it requires directory to be empty.
If the directory has:
- Files within it
- Directories within it
then, standard methods fail to delete the directory. The method we will present will delete the directory is all cases.
To delete non-empty directory, we will use shutil library in Python:
The rmtree() function of shutil will delete the specified directory irrespective if the directory is non-empty or has nested directories. Everything within the specified directory will be deleted.
Note the directory can be deleted only if the directory exists. So, before deleting the directory, we can check if the directory exists and code accordingly.
if os.path.exists("directory1"): shutil.rmtree("directory1", ignore_errors=True)
Following is the complete Python code to delete Directory recursively in Python:
import shutil # Delete non-empty directory named directory1 if os.path.exists("directory1"): shutil.rmtree("directory1", ignore_errors=True) print ("Directory deleted") else: print ("Directory does not exist")
With this article at OpenGenus, you must have the complete idea of how to delete non-empty directory in Python recursively.