Deleting file/dir using the os.remove() method
OS module in Python provides functions for interacting with the operating system. All functions in the os module raise OSError in the case of invalid or inaccessible file names and paths, or other arguments that have the correct type but are not accepted by the operating system.
os.remove() method in Python is used to remove or delete a file path. This method can not remove or delete a directory. If the specified path is a directory then OSError will be raised by the method.
Syntax of os.remove()
Syntax: os.remove(path, *, dir_fd = None)
Parameter: path: A path-like object representing a file path. A path-like object is either a string or bytes object representing a path.
- dir_fd (optional): A file descriptor referring to a directory. The default value of this parameter is None. If the specified path is absolute then dir_fd is ignored.
Note: The ‘*’ in parameter list indicates that all following parameters (Here in our case ‘dir_fd’) are keyword-only parameters and they can be provided using their name, not as positional parameter.
Return Type: This method does not return any value.
Example 1: Delete a File in Python
Suppose the file contained in the folder are:
We want to delete file1 from the above folder. Below is the implementation.
Python3
# Python program to explain os.remove() method # importing os module import os # File name file = 'file1.txt' # File location location = "D:/Pycharm projects/w3wiki/Authors/Nikhil/" # Path path = os.path.join(location, file ) # Remove the file # 'file.txt' os.remove(path) |
Output:
Example 2: Remove file with absolute path
If the specified path is a directory.
Python3
# Python program to explain os.remove() method # importing os module import os # Directory name dir = "Nikhil" # Path location = "D:/Pycharm projects/w3wiki/Authors/" path = os.path.join(location, dir ) # Remove the specified # file path os.remove(path) print ( "% s has been removed successfully" % dir ) # if the specified path # is a directory then # 'IsADirectoryError' error # will raised # Similarly if the specified # file path does not exists or # is invalid then corresponding # OSError will be raised |
Output:
Traceback (most recent call last): File "osremove.py", line 11, in os.remove(path) IsADirectoryError: [Errno 21] Is a directory: 'D:/Pycharm projects/w3wiki/Authors/Nikhil'
Example 3: Check if File Exists Before Deleting
Handling error while using os.remove() method.
Python3
# Python program to explain os.remove() method # importing os module import os # path path = 'D:/Pycharm projects/w3wiki/Authors/Nikhil' # Remove the specified # file path try : os.remove(path) print ( "% s removed successfully" % path) except OSError as error: print (error) print ( "File path can not be removed" ) |
Output:
[Errno 21] Is a directory: 'D:/Pycharm projects/w3wiki/Authors/Nikhil' File path can not be removed
Note: To know more about os.remove() click here.
Delete a directory or file using Python
In this article, we will cover how to delete (remove) files and directories in Python. Python provides different methods and functions for removing files and directories. One can remove the file according to their need.
Various methods provided by Python are –
- Using os.remove()
- Using os.rmdir()
- Using shutil.rmtree()
- Using pathlib.Path(empty_dir_path).rmdir()