Reemplazar una cadena en un archivo con Python
Para reemplazar una cadena en un archivo usando Python, siga estos pasos:
- Abrir el archivo de entrada en modo lectura y manejarlo en modo texto.
- Abrir el archivo de salida en modo escritura y manejarlo en modo texto.
- Para cada línea leída del archivo de entrada, reemplazar la cadena y escribirla en el archivo de salida.
- Cierre los archivos de entrada y de salida.
Ejemplo 1: Reemplazar una cadena en un archivo
En el siguiente ejemplo, sustituiremos la cadena pyton
por python
en el archivo datos.txt
, y escribiremos el resultado en salida.txt
.
#fichero de entrada
entradaArchivo = open("datos.txt", "rt")
#fichero de salida para escribir el resultado
salidaArchivo = open("salida.txt", "wt")
#para cada línea del archivo de entrada
for linea in entradaArchivo:
#leer reemplazar la cadena y escribir en el archivo de salida
salidaArchivo.write(linea.replace('pyton', 'python'))
#cerrar los archivos de entrada y salida
entradaArchivo.close()
salidaArchivo.close()
¿Qué hemos hecho aquí?
- Abrir
datos.txt
en modo lectura de textort
y obtener la referencia enentradaArchivo
. - Abrir
salida.txt
en modo escriturawt
y obtener la referencia ensalidaArchivo
. for linea in entradaArchivo:
para cada línea enentradaArchivo
i.e.,datos.txt
,linea.replace()
: reemplaza la cadenapyton
conpython
ysalidaArchivo.write
: escribe ensalida.txt
el texto reemplazado.entradaArchivo.close()
: cierra el fichero referenciado porentradaArchivo
,salidaArchivo.close()
: cierra el fichero referenciado porsalidaArchivo
.
Texto en el archivo de entrada:
Estás aprendiendo a reemplazar texto en un archivo con pyton.
Texto en el archivo de salida:
Estás aprendiendo a reemplazar texto en un archivo con python.
La cadena pyton
en el archivo se sustituye por la cadena python
.
Ejemplo 2: Reemplazar una cadena en el mismo archivo
En el siguiente ejemplo, reemplazaremos la cadena pyton
por python
en el archivo datos.txt
, y sobrescribiremos el archivo datos.txt
con el texto reemplazado, el mismo resultado pero sin crear otro archivo.
#leer el archivo de entrada
entradaArchivo = open("datos.txt", "rt")
#leer el contenido del archivo en una cadena
texto = entradaArchivo.read()
#reemplazar todas las ocurrencias de la cadena requerida
texto = texto.replace('pyton', 'python')
#cerrar el archivo de entrada
entradaArchivo.close()
#abrir el archivo de entrada en modo de escritura
entradaArchivo = open("datos.txt", "wt")
#sobreescribir el archivo de entrada con los datos resultantes
entradaArchivo.write(texto)
#cerrar el archivo
entradaArchivo.close()
¿Qué hemos hecho aquí?
- Abrir el archivo
datos.txt
en modo de lectura de textort
. entradaArchivo.read()
lee todo el texto endatos.txt
y se almacena en la variabletexto
.texto.replace()
reemplaza todas las ocurrencias depyton
conpython
en todo el texto.entradaArchivo.close()
cierra el archivo de entradadatos.txt
.- En las últimas tres líneas, estamos abriendo
datos.txt
en modo escriturawt
y escribiendo el texto endatos.txt
el texto que esta endatos.txt
será sobreescrito. Finalmente cerramos el archivoentradaArchivo.txt
.
Texto en el archivo de entrada:
Estás aprendiendo a reemplazar texto en un archivo con pyton.
Texto en el archivo de salida:
Estás aprendiendo a reemplazar texto en un archivo con python.
En este tutorial de Ejemplos de Python, aprendimos a reemplazar una cadena con otra en un archivo, con ayuda de ejemplos bien detallados.