Ir al contenido principal

Trabajando con ficheros de texto: Reemplazo de texto en un fichero.

Hola, mi nombre es Antonio Alfonso Martínez  y en la siguiente entrada vamos a retomar la serie de artículos dedicados a los ficheros de texto y de las acciones y operaciones que podemos llevar a cabo con ellos, haciendo uso de las funciones y recursos que nos proporciona el lenguaje de programación Python.

En esta ocasión, vamos a llevar a cabo una operación muy sencilla haciendo uso del módulo nativo "fileinput". Dicha operación no e otra que la de sustituir (dentro de un fichero de texto) un texto por otro que nosotros indicaremos:

Para ejemplificar el funcionamiento de nuestro programa, procederemos a hacer dicha operación sobre el texto almacenado en un archivo ".txt" (de nombre "archoo.txt") almacenado en nuestra carpeta Python:

carpeta

Dicho archivo, si lo abrimos nos encontramos con un texto, en el que queremos sustituir tres palabras (que en la imagen aparecen subrayadas en rojo) por otras tres palabras que indicaremos en su momento:

ficacamb

Así puesto que para esta operación, vamos a hacer uso del referido modulo "fileinput", lo primero que haremos será importar dicho módulo:

REEM1

Una vez que tenemos importado nuestro módulo "fileinput" ya estamos en condiciones de sustituir las palabras que deseemos. En nuestro caso, para establecer el texto a reemplazar y su correspondiente texto de reemplazo, crearemos un diccionario (al que daremos el nombre de "replacements"):

REEM2

Con la creación de nuestro diccionario establecemos que vamos a sustituir las palabras "funcioniiii", "creeado" y "perefectamente" por "funciona", "creado" y "correctamente" respectivamente.

Acto seguido iremos accediendo a cada una de las lineas del fichero en el que se encuentra nuestro texto (en nuestro caso "archoo.txt") del modo que se muestra en la siguiente imagen:

REEM3

Para cada linea (variable "line" en nuestro ejemplo) del fichero de texto, haremos uso del diccionario "replacements", la cual, iremos recorriendo mediante la variable "search_for", para efectuar los cambios:

REEM

A su vez crearemos la variable "replace_with" que será igual, tal y como se aprecia en la imagen, al elemento parejo al texto a reemplazar y por el que sustituiremos al original mediante la función ".replace" que tomará como argumentos, el texto a reemplazar (variable "search_for") y el texto de reemplazo (variable "replace_with"). Finalmente imprimiremos la linea con los cambios realizados, en nuestro archivo "archoo.txt".

Para comprobar el resultado de nuestra operación, volveremos a nuestro archivo "archoo.txt" y procederemos a abrirlo para ver su contenido:

FIINAL

Viendo el contenido de nuestro archivo, podemos verificar que el reemplazo se ha llevado a cabo con éxito.

Comentarios

  1. Very informative and impressive post you have written, this is quite interesting and i have went through it completely, an upgraded information is shared, keep sharing such valuable information. Microsoft Teams Business User Level

    ResponderBorrar

Publicar un comentario

Entradas más populares de este blog

Ejercicios de Programación en Java: Condicionales, Bucles, Tablas y Funciones

PRÓLOGO El libro Ejercicios de Programación en Java: Condicionales, Bucles, Tablas y Funciones nace como fruto de años de docencia en materias relacionadas: Algorítmica, Programación, Lenguaje C y Java, entre otros.  Con el paso del tiempo he constatado que aprender un lenguaje de programación es relativamente sencillo y sobre este tema existen muchos y muy buenos textos. Pero aprender a programar es algo totalmente distinto, que necesita de un mayor esfuerzo y abordar el problema desde otra perspectiva. Siempre utilizo la metáfora del pianista para explicar el tándem programar/lenguaje de programación: saber tocar las notas de un piano es relativamente fácil, tan solo debemos anotar en cada una de las teclas a qué nota musical corresponde. Esto sería similar a conocer un lenguaje de programación. Es muy sencillo utilizar un if o entender la mecánica de un while .  Volviendo al piano: una vez que dominamos la relación tecla/nota, un pianista debe aprender muchas ot...

Calculando el factorial de un número (ejemplo de función recursiva).

Hola, mi nombre es Antonio Alfonso Martínez y en el presente artículo me dispongo a explicar un sencillo método para calcular el factorial de un número haciendo uso del concepto de recursividad. Para empezar, diremos que el factorial de un número natural "n" es el resultado del producto de todos los números desde 1 hasta dicho número "n". Así, para efectuar el calculo del factorial de un número, vamos a emplear una sencilla función a la que daremos el nombre de "factorial". De modo, que, partiendo del hecho de que el factorial de 1 y 0 es 1, construiremos nuestra función (a la que daremos el nombre de "factorial") para realizar el calculo del factorial de 5: Lo que hace esta función, es tomar como argumento un número "n". de modo que si este es 0 o 1 ("if n==0 or n==1:") la función devolverá directamente como resultado el número 1 ("resultado=1"). Sin embargo si dicho número "n" es mayor que...

Trabajando con matrices (calculadora de matrices con "numpy").

En el presente artículo vamos a ver un rápido y sencillo para realizar  operaciones con matrices. Para lo cual haremos uso del módulo "numpy" el cual, nos permite realizar operaciones de forma sencilla y eficiente sobre grandes conjuntos de información que puede organizarse en vectores. Puesto que vamos a trabajar con "numpy", si lo tenemos ya instalado, lo primero que haremos será importarlo. En caso de que no lo tengamos aún instalado tendremos que hacer uso de "pip" para su instalación: Instalación de "numpy" mediante "pip": Importación de "numpy" como "np": Para crear matrices, tenemos que crear primero la matriz con las dimensiones deseadas, para luego asignarles los valores mediante un ciclo "for". Con "numpy" solo tendremos que crear dos arrays con tantos vectores como filas queramos que tenga nuestra matriz (a su  vez, cada uno de esos vectores tendrá tantos elementos como ...