Borrar archivos y directorios en Python
En Python, trabajar con archivos y directorios es una tarea común, especialmente para aplicaciones que requieren la manipulación de archivos. Este tutorial se centra en métodos avanzados para borrar archivos y directorios utilizando varios módulos de Python, incluyendo os, shutil y pathlib. Cada uno de estos módulos proporciona una funcionalidad diferente para trabajar con el sistema de archivos, permitiéndote gestionar archivos y directorios de forma eficiente. Para descargar Python, visite el siguiente enlace de la fuente oficial python.org.
Entender los módulos
1. Módulo os
El módulo os permite utilizar funciones dependientes del sistema operativo, como la lectura o escritura en el sistema de archivos. Incluye funciones de eliminación de archivos y directorios. El uso del módulo os en un entorno de hosting VPS Linux proporciona un control efectivo sobre la gestión de archivos y otras operaciones a nivel de sistema. Este módulo permite a los desarrolladores realizar acciones como leer, escribir y borrar archivos y directorios directamente en el servidor
Características principales:
- os.remove(ruta): Elimina la ruta a un fichero.
- os.rmdir(ruta): Elimina (destruye) la ruta a un directorio. El directorio debe estar vacío.
- os.unlink(ruta): Otro nombre para la función os.remove() utilizada para eliminar un archivo.
2. Módulo shutil
El módulo shutil ofrece una interfaz de alto nivel para trabajar con ficheros. Es especialmente útil para copiar y borrar directorios y archivos.
Funciones clave:
- shutil.rmtree(ruta): Elimina recursivamente un directorio y todo su contenido, incluidos subdirectorios y archivos.
- shutil.move(src, dst): Mueve un archivo o directorio a otra ubicación. También se puede utilizar para eliminar archivos moviéndolos a un directorio inexistente.
3. Módulo Pathlib
El módulo pathlib proporciona un enfoque orientado a objetos para trabajar con las rutas del sistema de archivos. Este módulo apareció en Python 3.4 y se considera más intuitivo y fácil de leer.
Características principales:
- Path.unlink(): Elimina el fichero.
- Path.rmdir(): Elimina un directorio vacío.
- Ruta.rmtree(): Para eliminar un directorio y su contenido, shutil.rmtree() se utiliza normalmente junto con Path.
Métodos avanzados para borrar archivos y directorios
Uso del módulo os
A continuación se explica cómo utilizar el módulo os para borrar ficheros y directorios:
Opción A: Ejecutando en Python interactivo
- Abra una sesión interactiva de Python escribiendo:
(Utiliza python si así es como está configurado Python en tu sistema, pero python3 suele ser el comando recomendado para Python 3.x).
- Copia y pega el código directamente en la sesión interactiva (script de abajo)
pájaro B: Escribir en un archivo de script Python
- Crea un nuevo archivo usando un editor de texto como nano:
- Copia y pega el siguiente código en el archivo (script de abajo)
- Ahora puedes ejecutar tu script Python desde el terminal:
Eliminar un único archivo
importar os
ruta_archivo = 'ejemplo.txt'
prueba:
os.remove(ruta_archivo)
print(f'Eliminado con éxito {ruta_archivo}')
excepto FileNotFoundError:
print(f'El archivo {ruta_archivo} no existe')
except PermissionError:
print(f'Permiso denegado: no se puede eliminar {ruta_archivo}')
excepto Exception como e:
print(f'Se ha producido un error: {e}')