Manejo de archivos y directorios en python

Como Crear directorios en python?

El manejo de directorios en python es bastante simple, el objetivo es hacer mas con menos código, así que comenzamos con una versión primitiva de como crear un directorio, usando siempre el paquete “os” que maneja este y muchos otros asuntos:

Si lo queremos ne menos lineas:

Este ultimo se asegura que la ruta no exista, y si no existe pues la crea. Ahora veamos uno mas compacto aun usando un shell del sistema operativo:

si dentro de la ruta existe una “carpeta” que no existe esta sera creada! sip así de fácil y divertido.

Como renombrar (mover) un archivo en python

Renombrar un archivo en python puede resultar de usar la misma funcionalidad que se usa para mover un archivo, el truco consiste en “mover” un archivo en el directorio x al mismo directorio x pero con diferente nombre. Todo lo que toma es importar el modulo “shutil” y usar su función “move” que mueve directorios de un lado a otro.

Pero… entonces para que sirve el “os.rename”? Bueno aunque su nombre es mas descriptivo, resulta que el “shutil.move” utiliza el “os.rename” si el directorio fuente es igual al directorio de destino, y utiliza el “shutil.copy2” para copiar los archivos si el directorio es distinto, entonces en “shutil.move” tenemos una forma compacta de ocuparnos de ambos casos.

Como recorrer un directorio en python

Recorrido básico:

la función “os.walk” se encarga de la recursividad y en cada iteración nos devuelve los siguientes valores:

  • dirName: El siguiente directorio que encontro
  • subDirList: Una lista de todos los sub-directorios en el directorio actual.
  • fileList: Una lista de archivos en el directorio actual

Otra forma de recorrer los directorios

la diferencia de este snippet de código es que le pasamos el parámetro topdown el cual nos permite recorrer el árbol desde sus “hojas” en lugar de recorrerlo desde la raíz, asi pues, el output es los archivos primero y luego los directorios. Mas eficaz si lo que buscamos puede estar en el ultimo folder del directorio.

Revisar si un directorio o archivo existe en python

Existen varias formas de hacer esta operación, veamos algunas:

  1. os.path.isfile(ruta)
  2. os.access(path, mode)
  3. open dentro de un try catch

En el caso 1 y 2 ambos regresan un valor booleano según el archivo sea accesible o no, en la mayoría de los casos el ejemplo 1 debería bastar.

 

Loading Comments…
more
Allowed HTML tags and attributes: <a href="" title=""> <blockquote> <code> <em> <strong>