Cómo extraer texto de un archivo TXT con Python: guía paso a paso
Cómo extraer texto de un archivo TXT en Python
Me encontré con este problema al intentar extraer texto de un .txtarchivo con Python, y sinceramente, es una de esas pequeñas tareas que parecen súper sencillas, hasta que se complican. Diría que me llevó varias noches intentando, trasteando con rutas, codificaciones y cerrando archivos, antes de descubrir qué pasaba. Si eres nuevo en el manejo de archivos en Python, aquí tienes mi resumen de lo que finalmente funcionó.
Paso 1: Crea un .txtarchivo de muestra
Primero, necesitas un archivo para leer, ¿verdad? Acabo de crear un archivo de texto plano llamado sample.txt. Agrega texto plano: nombres, números, lo que sea. Lo importante es guardarlo en un lugar accesible, preferiblemente en la misma carpeta que tu script para simplificar las cosas. Si no está ahí, quizás tengas que especificar la ruta completa, como r'C:\Users\YourName\Documents\sample.txt'. Ten cuidado con las barras diagonales en Windows y recuerda usar cadenas sin formato o barras diagonales inversas dobles. Además, comprueba que la codificación del archivo coincida con la que espera Python. Normalmente, UTF-8 es suficiente, pero si trabajas con caracteres especiales, quizás tengas que especificarlo explícitamente más adelante.
Paso 2: Abrir el archivo en Python
Aquí es donde empieza la posible confusión. Para leer un archivo, usa la función de Python open(). Necesita dos cosas: el nombre del archivo (o ruta) y el modo. El modo «r» es para lectura. Por lo tanto, la forma más sencilla es usar la withinstrucción, que se encarga de cerrar el archivo automáticamente al finalizar. Así:
with open('sample.txt', 'r') as file: # do stuff here
Si intentas abrir sin [nombre del witharchivo], no olvides cerrarlo más tarde; de lo contrario, podrías encontrarte con bloqueos de archivos, especialmente en Windows. He pasado demasiado tiempo depurando errores raros de «el archivo está siendo usado por otro proceso» porque olvidé cerrar archivos.
Si tu archivo no está en el mismo directorio, asegúrate de especificar la ruta completa. En Windows, esto implica evitar las barras invertidas o usar cadenas sin formato: r'C:\path\to\sample.txt'. De lo contrario, Python buscará en el directorio de trabajo actual, lo cual puede ser complicado si no lo sabes.
Paso 3: Extraer el contenido con.read()
Una vez abierto el archivo, simplemente llama a .read(). Esto capturará todo el contenido del archivo como una sola cadena grande, ideal si solo quieres ver o procesar todo el texto a la vez. Tu código debería verse así:
with open('sample.txt', 'r') as file: content = file.read() print(content)
Esto muestra todo el texto. Fácil, ¿verdad? Si no se parece al contenido de tu archivo, revisa el nombre, la ruta y la codificación. Recuerda, UTF-8 suele funcionar a menos que tu contenido contenga caracteres inusuales.
Advertencias y consejos importantes
withSe recomienda usarla, ya que cierra el archivo automáticamente. Siopen()no la usa, deberá llamarlafile.close()manualmente o se arriesga a problemas de bloqueo, especialmente en Windows.- Para archivos grandes,
.read()podría no ser la mejor opción. Carga todo en memoria, lo que puede ser un problema si el archivo es enorme. Podrías usarreadlines()para una lista de líneas o iterar línea por línea confor line in file:. Pero esa es otra historia. - Si el texto no está en ASCII simple, debe especificar la codificación explícitamente:
open('sample.txt', 'r', encoding='utf-8'). Me he encontrado con errores extraños en los que el texto aparece ilegible porque Python usa una codificación diferente de forma predeterminada.
Por qué es importante
Poder extraer texto de un archivo es una habilidad fundamental en Python. Ya sea que estés limpiando datos, analizando registros o simplemente experimentando, saber cómo abrir y leer archivos correctamente te ayuda a evitar dolores de cabeza más adelante. Pasé demasiado tiempo depurando archivos que no se imprimían correctamente porque olvidé el modo de archivo o la codificación correctos.
Me costó un poco de ensayo y error, sobre todo recordar siempre especificar el modo «r», comprobar las rutas y gestionar las codificaciones correctamente. Si tienes problemas, comprueba la ubicación del archivo, que el nombre coincida exactamente y que los permisos sean correctos. Y no olvides que, a veces, la codificación del archivo es la causa de que aparezcan caracteres extraños.
En fin, comprender este proceso básico realmente abre un abanico de posibilidades mucho más avanzadas para el manejo de archivos. Una vez que domines la lectura de archivos, solo queda pasar a escribir, analizar o procesar datos. Espero que esto te ayude; me llevó demasiado tiempo resolver estos pequeños problemas.¡Ojalá esto le ahorre a alguien un poco de frustración y algunos reinicios nocturnos!
Artículos relacionados
¿Te resultó útil este artículo?