You can use either remove("/path/to/file") or unlink("/file/path") to remove (delete) the file path.
Syntax: Python delete file
import os
os.remove("/tmp/foo.txt")
OR
import os
os.unlink("/tmp/foo.txt")
Examples: How can I delete a file or folder in Python?
A better option is to use os.path.isfile("/path/to/file") to check for whether the file exists or not:
#!/usr/bin/python import os myfile="/tmp/foo.txt" ## if file exists, delete it ## if os.path.isfile(myfile): os.remove(myfile) else: ## Show an error ## print("Error: %s file not found" % myfile) |
Or use try:…except OSError as follows to detect error while deleting the file:
#!/usr/bin/python import os ## get input ## myfile= raw_input("Enter file name to delete : ") ## try to delete file ## try: os.remove(myfile) except OSError, e: ## if failed, report it back to the user ## print ("Error: %s - %s." % (e.filename,e.strerror)) |
Sample outputs:
Enter file name to delete : demo.txt Error: demo.txt - No such file or directory. Enter file name to delete : rrr.txt Error: rrr.txt - Operation not permitted. Enter file name to delete : foo.txt
A note about deleting an entire directory tree in Python using shutil.rmtree()
Use shutil.rmtree() to delete an entire directory tree; path must point to a directory (but not a symbolic link to a directory). The syntax is:
inport shutil ## syntax ## shutil.rmtree(path) shutil.rmtree(path[, ignore_errors[, onerror]]) |
In this example, delete /nas01/nixcraft/oldfiles/ directory and all its files:
#!/usr/bin/python import os import sys import shutil # Get dir name mydir= raw_input("Enter directory name : ") ## Try to remove tree; if failed show an error using try...except on screen try: shutil.rmtree(mydir) except OSError, e: print ("Error: %s - %s." % (e.filename,e.strerror)) |
Sample outputs:
Enter directory name : /tmp/foobar/ Error: /tmp/foobar/ - No such file or directory. Enter directory name : /nas01/nixcraft/oldfiles/ Enter directory name : bar.txt Error: bar.txt - Not a directory.
The best way deleting files within Python is using shutil module, so this article is sorta useless.
TIMTOWTDIBSCINABTE …
and note that you’d better using “tempfile” module to work with temporary files, it is secure and does more stuff automatically for you.
Thank you! This was useful.