PRÁCTICA 106

Publicado por Gio M en 22:37
Anteriormente en el ejercicio 105 se había hecho un ejercicio para censurar palabras. Sin embargo hubo algo que no fue tomado en cuenta y que resulta una de las cosas importantes sobre el algoritmo que censura palabras: Los strings multilíneas.

Para quienes no lo han probado, los strings multilíneas en Python deben colocarse entre comillas, pero las comillas deben ser triples. Por ejemplo tenemos una lista de carros:

Ferrari
Alfa Romeo
Range Rover Evoque 2011

Si esto lo queremos colocar en python como string, normalmente colocamos todo en una linea

"Ferrari, Alfa Romeo, Range Rover Evoque 2011"

Si lo queremos colocar en varias líneas la forma de hacerlo es la siguiente:

"""Ferrari
Alfa Romeo
Range Rover Evoque 2011"""

Como pueden ver, las comillas son triples ahora, y no solo una en cada extremo. Pues en el algoritmo que censura palabras que se presenta en la práctica 105, solo sirve para censurar palabras en una línea.

Una de las cosas que uno debe aprender es que los saltos de línea tienen representación por carácteres. la representación en carácteres de un salto de línea es una raya inclinada y una n. Las rayitas inclinadas tienen su nombre:

\ Esta se llama backslash
/ esta se llama slash

Los saltos de línea se representan con un backslash y una n

\n

Cuando Python coloca un texto multilinea, en realidad es un texto de una sola línea, colocando este salto.

Por ejemplo

"""hola
que
tal estás hoy"""

Esto es:

"hola\nque \ntal estás hoy"

o algo similar. No sé si lo notaron a penas verlo, pero esto entonces nos complica la tarea de censurar palabras, porque ya no se trata solo de separar las palabras, si no de separar los saltos de línea. Estaba probando como podría por ejemplo censurar todas las palabras relacionadas con colores en un texto multilinea.

Ejemplo:

censurar_palabras(["azul","celeste","gris","azul","amarillo","blanca","rojos"],"""Tengo un carro amarillo
una camiseta celeste
vamos a la pradera
te mostraré el amanecer
la luna gris
el mar azul
tus labios son rojos
rojos
como el cielo de la tarde
tu piel blanca
blanca blanca
como la paz del viento
""")

Nos devolvería:

Tengo un carro ********
una camiseta *******
vamos a la pradera
te mostraré el amanecer
la luna ****
el mar ****
tus labios son *****
*****
como el cielo de la tarde
tu piel ******
****** ******
como la paz del viento

------------------------------------------------

Pues bueno, jugar con los saltos multilínea es un poco complicado porque uno piensa en los saltos multilínea como una especie de salto de línea mágico que simplemente existe porque uno presiona la tecla enter y ya salta de una línea a la otra. Nadie pensaría que un salto de línea no es otra cosa si no un

\n

que sería la representación de un grupo de bits que cuando la computadora los lee los interpreta como que es un salto de línea.

Bueno, ahora, se han creado y reparado algunas de las funciones que se usaron en la práctica 105, tal que ahora permite que introduzcamos textos con saltos de línea y censure las palabras lo mejor posible.

Aquí está el trabajo final del programa para censurar palabras:




Casi todas las modificaciones consistían en filtros que preparaban la información que devolvía una función y la adaptaban para que otra función la recibiera de mejor forma.


0 Respuestas a 'PRÁCTICA 106'

Publicar un comentario