Cómo borrar un archivo y un directorio en Python
Este tutorial introduce cómo eliminar un archivo o directorio en Python 2.7 y Python 3.
Borrar un archivo en Python
La función os.remove()
borra el archivo si este archivo existe, plantea las excepciones correspondientes si el archivo no existe, o no es un archivo, o el usuario no tiene permiso para borrarlo.
Primero podría comprobar si el archivo existe con os.path.isfile()
function o utilizar el manejo de excepciones try...except
para capturar el error. Recomendamos el manejo de excepciones como una mejor práctica.
import os
fileTest = r"C:\Test\test.txt"
try:
os.remove(fileTest)
except OSError as e:
print(e)
else:
print("File is deleted successfully")
Imprime File is deleted successfully
si el archivo se borra, e imprime [WinError 2] The system cannot find the file specified: 'C:\\Test\\test.txt'
si el archivo no existe. Y obtendrá [WinError 5] Access is denied: 'C:\\Test\\test.txt'
si el usuario no tiene el permiso para borrarlo.
Borrar un directorio en Python
shutil.rmtree()
borra un árbol de directorios entero, en otras palabras, todos los ficheros y subdirectorios en él. Hace excepciones si el argumento de entrada no es un directorio, o no existe o el usuario no tiene permiso para borrarlo.
import shutil
pathTest = r"C:\Test"
try:
shutil.rmtree(pathTest)
except OSError as e:
print(e)
else:
print("The directory is deleted successfully")