Verificar si es un directorio (carpeta) o archivo en Python

Comprobar si es directorio o archivo usando Python

Trabajando con Python tenía que comprobar si una ruta apuntaba a una carpeta o a un archivo. Para ello Python provee un método a través del paquete os. Veamos cómo aplicarlo.

Para esto tenemos que importar a os con:

import os

Listo. Los métodos que nos dicen si es directorio o archivo son os.path.isdir y os.path.isfile. Regresan un booleano (True o False).

Ejemplo de uso de isfile

Esta función regresa un booleano si la ruta que le pasamos es un archivo. Si no le pasamos una ruta completa buscará en donde el script se está ejecutando.

import os
if os.path.isfile("archivo/o_ruta"):
    print("Sí es un archivo")
else:
    print("No es archivo, o no existe")

Así podemos comprobarlo.

Actualización: recuerda llamar a isfile con la ruta absoluta del archivo en caso de que te dé problemas. Para eso puedes usar os.path.join, que une rutas.

Usar isdir

Funciona igual que isfile pero ahora comprueba si es directorio/carpeta:

import os
if os.path.isdir("ruta/a/carpeta"):
    print("Sí es una carpeta")
else:
    print("No es una carpeta o no existe")

Conclusiones

Estas funciones, aparte de indicar si es archivo o directorio, comprueban si el archivo existe. De esta manera testeamos si es un archivo y existe, o si es una carpeta y existe.

Estoy aquí para ayudarte 🤝💻


Estoy aquí para ayudarte en todo lo que necesites. Si requieres alguna modificación en lo presentado en este post, deseas asistencia con tu tarea, proyecto o precisas desarrollar un software a medida, no dudes en contactarme. Estoy comprometido a brindarte el apoyo necesario para que logres tus objetivos. Mi correo es parzibyte(arroba)gmail.com, estoy como@parzibyte en Telegram o en mi página de contacto

No te pierdas ninguno de mis posts 🚀🔔

Suscríbete a mi canal de Telegram para recibir una notificación cuando escriba un nuevo tutorial de programación.

Dejar un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *