Explorando un directorio en Python

En este ejercicio, desarrollarás un programa en Python que explore un directorio especificado y liste todo su contenido, incluidos archivos y subdirectorios. Este ejercicio es perfecto para practicar el manejo de archivos, la navegación por directorios y el manejo de errores en Python. Al implementar este programa, obtendrás experiencia práctica en el manejo de operaciones de archivos, la navegación por directorios y el manejo de errores en Python. Este ejercicio no solo refuerza tu comprensión del manejo de archivos, sino que también te ayuda a desarrollar prácticas de codificación eficientes para gestionar las interacciones con el usuario. Además, este ejercicio proporciona una excelente oportunidad para explorar la versatilidad de Python en aplicaciones del mundo real. Al trabajar con el manejo de archivos, la navegación por directorios y el manejo de errores, aprenderás a estructurar tu código de manera eficiente, lo cual es una habilidad crucial en muchos escenarios de programación. Este ejercicio también te anima a pensar críticamente sobre cómo estructurar tu código para la legibilidad y el rendimiento, convirtiéndolo en una valiosa adición a tu portafolio de programación. Ya seas un principiante o un programador experimentado, este ejercicio te ayudará a profundizar tu comprensión de Python y mejorar tus habilidades para resolver problemas.



Grupo

Uso de bibliotecas adicionales en Python

Objectivo

Desarrollar un programa Python que explore un directorio específico y enumere todo su contenido, incluidos los archivos y subdirectorios. El programa debe mostrar los nombres de los archivos y directorios, así como detalles adicionales como el tamaño del archivo, el tipo y la fecha de creación. Implementar el manejo de errores para rutas de directorio no válidas y directorios inaccesibles.

Ejemplo Ejercicio Python

 Copiar Código Python
import os
import time

def get_file_info(file_path):
    """Get details like size, type, and creation date for a given file."""
    try:
        file_size = os.path.getsize(file_path)  # File size in bytes
        file_creation_time = os.path.getctime(file_path)  # File creation time (epoch)
        file_type = "Directory" if os.path.isdir(file_path) else "File"
        file_creation_date = time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(file_creation_time))

        return file_size, file_type, file_creation_date
    except Exception as e:
        print(f"Error retrieving information for {file_path}: {e}")
        return None, None, None

def explore_directory(directory_path):
    """Explore the specified directory and list its contents."""
    if not os.path.exists(directory_path):
        print(f"Error: The directory '{directory_path}' does not exist.")
        return
    
    if not os.path.isdir(directory_path):
        print(f"Error: '{directory_path}' is not a valid directory.")
        return
    
    print(f"Exploring directory: {directory_path}\n")
    try:
        # List the files and directories
        for root, dirs, files in os.walk(directory_path):
            # Print the details for subdirectories
            for directory in dirs:
                dir_path = os.path.join(root, directory)
                file_size, file_type, file_creation_date = get_file_info(dir_path)
                print(f"Directory: {directory}")
                print(f"  Path: {dir_path}")
                print(f"  Size: {file_size} bytes")
                print(f"  Type: {file_type}")
                print(f"  Created on: {file_creation_date}\n")
            
            # Print the details for files
            for file in files:
                file_path = os.path.join(root, file)
                file_size, file_type, file_creation_date = get_file_info(file_path)
                print(f"File: {file}")
                print(f"  Path: {file_path}")
                print(f"  Size: {file_size} bytes")
                print(f"  Type: {file_type}")
                print(f"  Created on: {file_creation_date}\n")
                
    except PermissionError:
        print(f"Error: Permission denied while accessing '{directory_path}'")
    except Exception as e:
        print(f"Unexpected error: {e}")

def main():
    """Main function to initiate the directory exploration."""
    directory_path = input("Enter the directory path to explore: ").strip()
    explore_directory(directory_path)

if __name__ == '__main__':
    main()

 Output

Enter the directory path to explore: /home/user/Documents

Exploring directory: /home/user/Documents

Directory: SubFolder1
  Path: /home/user/Documents/SubFolder1
  Size: 4096 bytes
  Type: Directory
  Created on: 2024-01-15 10:35:12

File: example_file.txt
  Path: /home/user/Documents/example_file.txt
  Size: 2048 bytes
  Type: File
  Created on: 2023-12-01 14:22:45

File: image.jpg
  Path: /home/user/Documents/image.jpg
  Size: 102400 bytes
  Type: File
  Created on: 2023-11-18 08:11:30

Comparte este ejercicios Python

Más ejercicios de Programacion Python de Uso de bibliotecas adicionales en Python

¡Explora nuestro conjunto de ejercicios de programación en Python! Diseñados específicamente para principiantes, estos ejercicios te ayudarán a desarrollar una sólida comprensión de los fundamentos de Python. Desde variables y tipos de datos hasta estructuras de control y funciones simples, cada ejercicio está diseñado para desafiarte gradualmente a medida que adquieres confianza en la programación en Python.

  • Explorando Subdirectorios en Python

    En este ejercicio, desarrollarás un programa en Python que explore un directorio especificado y liste todos los subdirectorios dentro de él. Este ejercicio es ...

  • Trabajar con fecha y hora en Python

    En este ejercicio, desarrollarás un programa en Python que trabaje con fechas y horas. Este ejercicio es perfecto para practicar la manipulación de fechas y ho...

  • Mostrar contenidos del directorio en Python

    En este ejercicio, desarrollarás un programa en Python que muestre el contenido de un directorio especificado. Este ejercicio es perfecto para practicar el man...

  • Listado de archivos ejecutables en un directorio en Python

    En este ejercicio, desarrollarás un programa en Python que liste todos los archivos ejecutables en un directorio especificado. Este ejercicio es perfecto para ...

  • Fecha y hora continuas en Python

    En este ejercicio, desarrollarás un programa en Python que muestre continuamente la fecha y hora actuales en tiempo real. Este ejercicio es perfecto para pract...

  • Generador de mapas del sitio en Python

    En este ejercicio, desarrollarás un programa en Python que genere un mapa del sitio para un sitio web. Este ejercicio es perfecto para practicar el rastreo web...