¿Cómo saber cuántas carpetas hay dentro de otra usando Python?

En esta entrada vamos a ver un código para saber cuantas carpetas hay dentro de otra utilizando Python haremos uso de la función scandir() del módulo os. Este módulo es parte de la biblioteca estándar de Python por lo que no será necesario instalar algo adicional.

El módulo os tiene funcionalidades para interactuar con el sistema operativo. En particular la función scandir() regresa un iterador con el contenido de una ruta, ya sean archivos o carpetas. Es posible especificar la ruta pero si no colocamos ruta entonces toma la ubicación en la que te encuentras.

El código que vamos a utilizar es el siguiente:

from os import scandir

carpetas = 0
for item in scandir():
    if item.is_dir():
        carpetas += 1
print("cantidad de carpetas:",carpetas)

El código hace lo siguiente:

  • Importa solo la función scandir() del módulo os
  • Crea una variable que llevará el conteo de carpetas
  • Inicia un ciclo for para recorrer cada elemento que regresa la función scandir()
  • Evalúa si el elemento en turno es una carpeta con ayuda del método is_dir()
  • Si el elemento corresponde a una carpeta se incrementa en 1 la variable carpetas
  • Finalmente imprime la cantidad de carpetas encontradas

Si quisieras repasar el funcionamiento de los ciclos te recomiendo darte una vuelta por la entrada Control de flujo que forma parte de la serie Python para Principiantes.

Vamos a hacer una adecuación al código anterior para conocer el nombre de las carpetas además de la cantidad:

from os import scandir

carpetas = 0
nombres = []
for item in scandir():
    if item.is_dir():
        carpetas += 1
        nombres.append(item.name)
print("cantidad de carpetas:",carpetas)
print(nombres)

Las líneas que se incluyeron hacen lo siguiente:

  • Crea una lista en la que se almacenará el nombre de las carpetas
  • Se añade el nombre de la carpeta a la lista utilizando el atributo name
  • Finalmente se imprime la lista de nombres.

Espero que el código anterior te sea de utilidad y lo puedas incluir en tus programas cuando quieras saber cuántas carpetas hay dentro de otra carpeta usando Python. Cuéntame qué te ha parecido esta entrada y si has utilizado alguna solución alternativa.

¡No olvides suscribirte a nuestro boletín!

¡No enviamos spam! Lee más en nuestra política de privacidad

1 comentario en «¿Cómo saber cuántas carpetas hay dentro de otra usando Python?»

Deja un comentario