Programación

Manejo de Archivos en Python

19 ENE., 2025

//

1 min. de Lectura

El acceso a archivos es una de las tareas más comunes en programación. En Python, trabajar con archivos es sencillo y eficiente gracias a su integración con funciones de entrada/salida (I/O). Ya sea que necesites leer datos, escribir resultados o manipular archivos existentes, Python ofrece una variedad de métodos para hacerlo. En este artículo, exploraremos cómo acceder a archivos en Python, con ejemplos prácticos que ilustran cada concepto.

Abrir y Cerrar Archivos

Para comenzar a trabajar con archivos en Python, primero debes abrir el archivo usando la función open(). Esta función toma al menos dos argumentos: el nombre del archivo y el modo en que se abrirá (lectura, escritura, etc.).

Modos de Apertura

  • 'r': Lectura (predeterminado): Abre un archivo para leerlo.
  • 'w': Escritura: Abre un archivo para leerlo.
  • 'a': Adición: Abre un archivo para agregar contenido al final.
  • 'b': Modo binario: Se usa junto con otros modos (por ejemplo, 'rb' para leer en binario).
  • 't': Modo de texto (predeterminado).

# Abrir un archivo en modo lectura
archivo = open('codigo/python/archivos/datos.txt', 'r')

# Realizar operaciones con el archivo
contenido = archivo.read()
print(contenido)

# Cerrar el archivo
archivo.close()

Mira el código completo aquí

Lectura

Existen varias formas de leer archivos en Python. A continuación, se presentan algunas de las más comunes:

  1. Leer Todo el Contenido: con la función read()
  2. Leer primera linea: Es útil cuando deseas procesar el archivo línea por línea sin cargar todo su contenido en memoria. Se utiliza la función readline()
  3. Leer Línea por Línea: se utiliza la función readlines() para leer línea por línea
  4. Leer un Número Específico de Caracteres: con la función read(...) especificando un número de caracteres
  5. Leer Archivo CSV: Si trabajas con archivos CSV, el módulo csv proporciona métodos específicos para leer y escribir en este formato. La función csv.reader

Uso de la Declaración with

Una práctica recomendada al trabajar con archivos en Python es usar la declaración with. Esto asegura que el archivo se cierre automáticamente al finalizar el bloque, incluso si ocurre un error. Aquí hay un ejemplo:


    with open('datos.txt', 'r') as archivo:
        contenido = archivo.read()
        print(contenido)

Escritura

Python proporciona una variedad de métodos y modos para escribir en archivos, lo que te permite manejar diferentes tipos de datos y estructuras de manera eficiente

  1. write(): Se utiliza para escribir una cadena en el archivo. Si el archivo no existe, se crea; si ya existe, su contenido se sobrescribe.
  2. writelines(): permite escribir una lista de cadenas en el archivo. No añade automáticamente saltos de línea, así que deberás incluirlos si es necesario.
  3. Modo Adición ('a'): Si deseas agregar contenido a un archivo existente sin sobrescribirlo, puedes abrirlo en modo adición utilizando 'a'. Esto permite que el nuevo contenido se añada al final del archivo.
  4. Escritura en Modo Binario: Para escribir datos en formato binario (como imágenes o archivos de audio), debes abrir el archivo en modo binario ('wb').
  5. Escritura de Archivos CSV: Si estás trabajando con datos tabulares, el módulo csv te permite escribir fácilmente archivos CSV.
# Abrir un archivo en modo lectura
import csv

ruta = 'codigo/python/archivos/datos.txt'
archivo = open(ruta, 'r')

# 1
with open(ruta, 'w') as archivo:
    archivo.write('Hola, mundo!\n')
    archivo.write('Este es un archivo de texto.\n')

# 2
lineas = ['Primera línea.\n', 'Segunda línea.\n', 'Tercera línea.\n']

with open(ruta, 'w') as archivo:
    archivo.writelines(lineas)

# 3
with open(ruta, 'a') as archivo:
    archivo.write('Cuarta línea agregada.\n')

# 4
datos_binarios = bytes([120, 3, 255, 0, 100])  # Ejemplo de datos binarios

with open(ruta, 'wb') as archivo:
    archivo.write(datos_binarios)

# 5
with open('saludo.txt', 'w') as archivo:
    print('Hola, mundo!', file=archivo)
    print('Este es un archivo de texto.', file=archivo)

# 6
datos = [
    ['Nombre', 'Edad'],
    ['Alice', 23],
    ['Bob', 22],
    ['Charlie', 21]
]

with open('datos.csv', 'w', newline='') as archivo:
    escritor = csv.writer(archivo)
    escritor.writerows(datos)

Mira el código completo aquí

Manejo de errores

Manejar errores al abrir o leer archivos es crucial para garantizar que tu programa funcione correctamente y no se detenga inesperadamente. En Python, puedes usar bloques try y except para capturar y manejar excepciones. Aquí te muestro cómo hacerlo:


try:
    with open('datos.txt', 'r') as archivo:
        contenido = archivo.read()
        print(contenido)
except FileNotFoundError:
    # Captura el error si el archivo no existe.
    print("Error: El archivo no se encontró.")
except IOError:
    #  Maneja otros errores de entrada/salida, como problemas al abrir o leer el archivo.
    print("Error: Ocurrió un problema al intentar leer el archivo.")
except Exception as e:
    # Captura cualquier otro error.
    print("Error: Ocurrió un error inesperado.")
    print(e)

El acceso a archivos en Python es un proceso directo y flexible que se puede adaptar a diversas necesidades. Ya sea que necesites leer, escribir o manipular archivos, Python proporciona las herramientas necesarias para hacerlo de manera eficiente. Usar la declaración with es una buena práctica que ayuda a gestionar recursos de forma adecuada, evitando problemas de archivos no cerrados. Con los ejemplos presentados en este artículo, estás listo para comenzar a trabajar con archivos en tus propios proyectos de Python. ¡Feliz codificación!

Share:

Comentarios (0)

Accede para comentar

Sin comentarios

También te puede interesar

3 DIC., 2024 Comandos Básicos de Git

Lista de los principales comando de git

Bonnie image
José Elías Romero Guanipa
Autor
logo

©2024 ViveBTC