PRÁCTICA 105

Publicado por Gio M en 13:08
Bueno hola, espero que la hayan pasado bien el fin de semana. Parece que ya se viene una nueva semana en la U donde tendremos que comenzar a prepararnos para el nuevo exámen de intro o una progra, a partir de esta semana hay que esperar para ver qué decide hacer el profesor.

Estuve pensando sobre una nueva función, que nos permitiera censurar las palabras de un string. Aprendí un par de cosas, entre ellas me encontré con que el encoding que estaba usando estaba mal.

El encoding es una primera línea que aparece en el IDE que usamos, yo estaba usando utf-8. Mucha gente no sabe qué es utf-8 y pienso que deberían averiguar sobre el encoding, importante tanto para los programas como las páginas webs. También informarse sobre las normas ISO.

Bueno, al principio de cada programa, se coloca esta línea:

# -*- coding: iso-8859-15 -*-

Como muchos sabemos el inglés es el idioma en el que se encuentran la mayoría de programas. Sin embargo a la hora de programar debemos tomar en cuenta que no todo el mundo habla inglés. Unos hablan francés, otros hablan español, etcétera.

Así, usando el iso-8859-15, no vamos a tener problemas con carácteres como lo son las letras tildadas, los signos de admiración e interrogación iniciales (Ya que en inglés solo se usan !?, no usan ¡¿) preferiblemente, tengamos siempre en cuenta que el texto pueda estar en cualquier tipo de formato.

Lo digo porque para realizar una función de censura se necesita eliminar carácteres y puede que existan conflictos que aún no me quedan del todo claro.

Más información sobre este coding en http://es.wikipedia.org/wiki/ISO_8859-15

Bueno ahora si, pasando a la función de censurar palabras (Utilizando listas, porque eso es lo que estamos estudiando) tenemos que censurar palabras es algo tan fácil como tomar una palabra del texto, cambiarla por asteriscos, y volverla a colocar en su lugar. Algo tan censillo como eso.

Pero a veces uno tiene una idea muy alejada de lo que en realidad se debe programar para obtener lo que se desea. En este ejemplo se han usado 7 funciones.

Crear una función que reciba una lista con insultos y un string. La función debe censurar las palabras que se encuentran en la lista.

Ejemplos:

censurar_palabras(["idiota","fea"],"Que idiota y fea, pero ni modo")
>> Que ****** y ***, pero ni modo

censurar_palabras(["perra","zorra"],"La zorra y la perra son animales que tienen como antepasado común el Tomarctus")
>> La ***** y la ***** son animales que tienen como antepasado común el Tomarctus



Esta función usa el siguiente razonamiento. Convierte el string en una lista, utilizando los espacios como referencia.

En la lista quedan todas las palabras del string. Algunas de las palabras quedan junto a comas y otros símbolos, ya que al usarse los espacios como referencia no se distingue entre palabras y símbolos.

Entonces luego tenemos una lista de insultos. Ahora tenemos dos lista, la lista de insultos, y el texto convertido en listas. Comprobamos si las palabras de la lista se encuentran dentro de la lista de insultos. Si es así, se censuran.

Luego de que todas las palabras están censuradas, se convierte la lista en un string, quedándonos finalmente las palabras censuradas.

0 Respuestas a 'PRÁCTICA 105'

Publicar un comentario