Python de Cero a Experto / Ruta scripting
Automatizar archivos y carpetas
Empiezas la primera RUTA especializada: scripting y automatización, donde Python brilla como la navaja
suiza del programador. La tarea estrella: automatizar el manejo de ARCHIVOS y CARPETAS —listar, buscar,
copiar, mover, renombrar cientos de archivos en segundos, sin hacerlo a mano—. Con os, pathlib y
shutil conviertes tareas tediosas en scripts de unas líneas. Hoy aprendes a manipular el sistema de
archivos programáticamente.
El asistente incansable
Listar y buscar archivos
Aquí creamos unos archivos de ejemplo y los exploramos (todo corre en el sistema de archivos en memoria de este entorno):
os.listdir(".") lista todo el contenido de una carpeta. Path(".").glob("*.txt") busca por PATRÓN —el
* es un comodín, así que *.txt encuentra todos los archivos de texto—. Sobre cada Path tienes
información útil: .stat().st_size (tamaño), .name, .suffix (extensión), .stem (nombre sin extensión),
.exists(). Con glob y estas propiedades ya puedes filtrar archivos por tipo, tamaño o nombre —el primer
paso de casi toda automatización—. Para buscar en subcarpetas también, usa rglob (glob recursivo).
Copiar, mover y renombrar
¿Qué hace Path('.').glob('*.txt') y cuál es la diferencia entre copiar y renombrar/mover un archivo?
Mini-reto
Automatiza sobre archivos de Mi Bolsillo: 1) crea tres archivos de ejemplo con distintas extensiones
(.txt, .csv, .json) usando write_text; 2) lista solo los .csv con glob y muestra su tamaño; 3)
crea una carpeta procesados y mueve el .json dentro con rename; 4) haz una copia de respaldo del .csv
con shutil.copy. Verifica el resultado listando cada carpeta. Piensa: ¿qué tarea manual tediosa
automatizarías así en tu vida real?
Qué sigue
Ya manipulas archivos sueltos. La próxima lección junta todo en un script de automatización COMPLETO: un organizador que clasifica un montón de archivos desordenados en carpetas según su tipo, en una pasada —el clásico "ordena mi carpeta de descargas" que todos necesitan—.