Ejercicio de programación con Python: Reto archivos
1h 30m
Desarrolla un gestor de archivos en Python con funciones CRUD, búsqueda, estadísticas y manejo de excepciones para un control completo.
Crea un nuevo archivo Python llamado
gestor_archivos.py
que contendrá todas las funcionalidades del gestor de archivos.Implementa las siguientes funciones básicas para operaciones CRUD:
crear_archivo(nombre, contenido="")
: crea un nuevo archivo con el nombre especificado y el contenido inicial opcional.leer_archivo(nombre)
: lee y devuelve el contenido de un archivo existente.actualizar_archivo(nombre, nuevo_contenido, modo="w")
: actualiza el contenido de un archivo existente. El parámetromodo
permite elegir entre sobrescribir (w
) o añadir (a
).eliminar_archivo(nombre)
: elimina un archivo del sistema.
- Desarrolla funciones adicionales para análisis de archivos:
buscar_archivos(directorio, patron)
: busca archivos que coincidan con un patrón (nombre o extensión) en el directorio especificado.estadisticas_archivo(nombre)
: analiza un archivo y devuelve un diccionario con el número de líneas, palabras y caracteres.
- Implementa un sistema robusto de manejo de excepciones para cada función, capturando y manejando adecuadamente errores como:
- Archivo no encontrado
- Permisos insuficientes
- Directorio no existente
- Errores de E/S
Crea una función
validar_nombre_archivo(nombre)
que compruebe si un nombre de archivo es válido según las reglas del sistema operativo.Desarrolla un menú interactivo por consola utilizando un bucle
while
que muestre las opciones disponibles y permita al usuario seleccionar la operación deseada.Implementa una función
main()
que inicie el programa y gestione el flujo de ejecución.Añade docstrings a todas las funciones siguiendo el estándar PEP 257, explicando el propósito, parámetros y valores de retorno de cada función.
Asegúrate de que tu programa maneje correctamente las rutas de archivos tanto relativas como absolutas.
Prueba todas las funcionalidades con diferentes casos de uso para verificar su correcto funcionamiento.
Más ejercicios de programación con Python
Evalúa tus conocimientos en Python con más ejercicios de programación de tipo Test, Puzzle, Código y Proyecto con VSCode.
Módulo math
Reto herencia
Excepciones
Introducción a Python
Reto variables
Funciones Python
Reto funciones
Módulo datetime
Reto acumulación
Reto estructuras condicionales
Polimorfismo
Módulo os
Reto métodos dunder
Diccionarios
Reto clases y objetos
Reto operadores
Operadores
Estructuras de control
Funciones lambda
Reto diccionarios
Tecnologías de este ejercicio de programación
Entornos de desarrollo para este ejercicio

Visual Studio Code

GitHub