En este tema, aprenderás cómo realizar operaciones básicas y avanzadas con archivos y directorios en Python. Trabajar con el sistema de archivos es una habilidad esencial para cualquier programador, ya que muchas aplicaciones necesitan leer, escribir y manipular archivos y directorios.

Contenido

Introducción a os y shutil

Python proporciona varios módulos para interactuar con el sistema de archivos. Los más comunes son os y shutil.

  • os: Este módulo proporciona una forma portátil de usar funcionalidades dependientes del sistema operativo como leer o escribir en el sistema de archivos.
  • shutil: Este módulo ofrece una interfaz de nivel superior para operaciones de archivos y colecciones de archivos.

Ejemplo Básico

import os
import shutil

# Obtener el directorio de trabajo actual
current_directory = os.getcwd()
print(f"Directorio de trabajo actual: {current_directory}")

# Crear un nuevo directorio
os.mkdir('nuevo_directorio')

# Copiar un archivo
shutil.copy('archivo_origen.txt', 'archivo_destino.txt')

Operaciones Básicas con Archivos

Leer y Escribir Archivos

Para leer y escribir archivos, Python proporciona funciones integradas como open(), read(), write(), y close().

Leer un Archivo

# Abrir un archivo en modo lectura
with open('archivo.txt', 'r') as file:
    contenido = file.read()
    print(contenido)

Escribir en un Archivo

# Abrir un archivo en modo escritura
with open('archivo.txt', 'w') as file:
    file.write('Hola, Mundo!')

Eliminar Archivos

import os

# Eliminar un archivo
os.remove('archivo.txt')

Operaciones Básicas con Directorios

Crear y Eliminar Directorios

Crear un Directorio

import os

# Crear un nuevo directorio
os.mkdir('nuevo_directorio')

Eliminar un Directorio

import os

# Eliminar un directorio vacío
os.rmdir('nuevo_directorio')

Listar Contenidos de un Directorio

import os

# Listar todos los archivos y directorios en el directorio actual
contenido = os.listdir('.')
print(contenido)

Manipulación Avanzada de Archivos y Directorios

Copiar y Mover Archivos

Copiar Archivos

import shutil

# Copiar un archivo
shutil.copy('archivo_origen.txt', 'archivo_destino.txt')

Mover Archivos

import shutil

# Mover un archivo
shutil.move('archivo_origen.txt', 'nueva_ubicacion/archivo_origen.txt')

Copiar y Eliminar Directorios

Copiar Directorios

import shutil

# Copiar un directorio y su contenido
shutil.copytree('directorio_origen', 'directorio_destino')

Eliminar Directorios

import shutil

# Eliminar un directorio y su contenido
shutil.rmtree('directorio_a_eliminar')

Ejercicios Prácticos

Ejercicio 1: Crear y Listar Directorios

Instrucciones: Crea un directorio llamado mi_directorio y luego lista todos los archivos y directorios en el directorio actual.

import os

# Crear un nuevo directorio
os.mkdir('mi_directorio')

# Listar todos los archivos y directorios en el directorio actual
contenido = os.listdir('.')
print(contenido)

Ejercicio 2: Copiar y Mover Archivos

Instrucciones: Copia un archivo llamado archivo_origen.txt a un nuevo archivo llamado archivo_copiado.txt y luego mueve archivo_copiado.txt a un directorio llamado mi_directorio.

import shutil

# Copiar el archivo
shutil.copy('archivo_origen.txt', 'archivo_copiado.txt')

# Mover el archivo copiado al nuevo directorio
shutil.move('archivo_copiado.txt', 'mi_directorio/archivo_copiado.txt')

Ejercicio 3: Eliminar Archivos y Directorios

Instrucciones: Elimina el archivo archivo_copiado.txt dentro de mi_directorio y luego elimina el directorio mi_directorio.

import os
import shutil

# Eliminar el archivo
os.remove('mi_directorio/archivo_copiado.txt')

# Eliminar el directorio
os.rmdir('mi_directorio')

Conclusión

En esta sección, has aprendido cómo realizar operaciones básicas y avanzadas con archivos y directorios utilizando los módulos os y shutil en Python. Estas habilidades son fundamentales para cualquier programador, ya que permiten interactuar con el sistema de archivos de manera eficiente y efectiva. Asegúrate de practicar los ejercicios proporcionados para consolidar tu comprensión y estar preparado para el siguiente módulo.

Curso de Programación en Python

Módulo 1: Introducción a Python

Módulo 2: Estructuras de Control

Módulo 3: Funciones y Módulos

Módulo 4: Estructuras de Datos

Módulo 5: Programación Orientada a Objetos

Módulo 6: Manejo de Archivos

Módulo 7: Manejo de Errores y Excepciones

Módulo 8: Temas Avanzados

Módulo 9: Pruebas y Depuración

Módulo 10: Desarrollo Web con Python

Módulo 11: Ciencia de Datos con Python

Módulo 12: Proyecto Final

© Copyright 2024. Todos los derechos reservados