La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Scripts y funciones día18, 25-feb-15 SPAN 4350 Cultura computacional en español Harry Howard Tulane University.

Presentaciones similares


Presentación del tema: "Scripts y funciones día18, 25-feb-15 SPAN 4350 Cultura computacional en español Harry Howard Tulane University."— Transcripción de la presentación:

1 Scripts y funciones día18, 25-feb-15 SPAN 4350 Cultura computacional en español Harry Howard Tulane University

2 Organización del curso 25-feb-2015CultCompES, Prof. Howard, Tulane University 2  http://www.tulane.edu/~howard/Span4350/ http://www.tulane.edu/~howard/Span4350/  http://www.tulane.edu/~howard/CompCultES/ http://www.tulane.edu/~howard/CompCultES/ 1. Computación cultural 2. Python 3. Cadenas 4. Unicode 5. Exreg 6. Archivos 7. Listas 8. Control

3 La travesía de 'advertencia' 25-feb-2015CultCompES, Prof. Howard, Tulane University 3 ¡Ojo! print letra inicio fin

4 Una de expresiones regulares  Encuentra las palabras de "fruta" que tienen cuatro letras y terminan con 'a', con search(expresión regular, fuente, UNICODE). 1. >>> from re import search, UNICODE 2. >>> for p in fruta: 3....if search(r'^\w{3}a$', p.decode('utf8'), UNICODE): 4....print p, 5.... 6. >>> pera 7. >>> [p for p in fruta if search(r'^\w{3}a$', p.decode('utf8'), UNICODE)] 8. >>> ['pera'] 25-feb-2015CultCompES, Prof. Howard, Tulane University 4

5 25-feb-2015CultCompES, Prof. Howard, Tulane University 5 Condiciones encadenadas 1. >>> cadena = '¡Ojo!'.decode('utf8') 2. >>> for c in cadena: 3.... if c.islower(): 4.... print c, 'es una letra en minúscula' 5.... elif c.isupper(): 6.... print c, 'es una letra en mayúscula' 7.... else: 8.... print c, 'no es una letra' 9.... 10. ¡ no es una letra 11. O es una letra en mayúscula 12. j es una letra en minúscula 13. o es una letra en minúscula 14. ! no es una letra

6 25-feb-2015CultCompES, Prof. Howard, Tulane University 6 Como agregar a una lista en una travesía 1. >>> cadena = '¡Ojo!'.decode('utf8') 2. >>> min=[]; may=[]; nin=[] 3. >>> for c in cadena: 4.... if c.islower(): 5.... min.append(c) 6.... elif c.isupper(): 7.... may.append(c) 8.... else: 9.... nin.append(c) 10.... 11. >>> min; may; nin 12. ['j', 'o'] 13. ['O'] 14. [u'\xa1', '!']

7 §8 Scripts 25-feb-2015 7 CultCompES, Prof. Howard, Tulane University

8 25-feb-2015CultCompES, Prof. Howard, Tulane University 8 Presentación  Para ahora habrás escrito y reescrito un montón de código en el intérprete interactivo de Python.  Si te equivocas al volver a escribir un ejemplo complejo, tienes que entrarlo todo de nuevo.  Utilizar las teclas de flecha para acceder y modificar los comandos anteriores es útil, pero no soluciona el problema.  En esta sección vemos dos aspectos importantes para la reutilización de código:  el editor de Spyder  las funciones de Python.

9 El editor de Spyder  Con Spyder, baja el menú File y abre una nuevo documento.  Entra el siguiente programa en una línea:  print 'Viva Mardi Gras!'  Guarda este programa como "viva.py" y luego ir al menú Run y seleccionar el comando Run. 25-feb-2015CultCompES, Prof. Howard, Tulane University 9

10 Un script para abrir la Gitanilla  Con Spyder, baja el menú File y abre una nuevo documento.  Entra lo siguiente: 1. from nltk.corpus import PlaintextCorpusReader 2. texlector = PlaintextCorpusReader('', 'Gitanilla.txt', encoding='utf8') 3. texto = texlector.words() 4. Guárdalo como "procesaTexto.py". 25-feb-2015CultCompES, Prof. Howard, Tulane University 10

11 Funciones 25-feb-2015 11 CultCompES, Prof. Howard, Tulane University

12 25-feb-2015CultCompES, Prof. Howard, Tulane University 12 La función  Una función es sólo un bloque de código con nombre que realiza una tarea bien definida.  Una función se suele definirse  para que acepte algunos entradas, utilizando variables especiales conocidos como parámetros, y  puede producir un resultado, también conocido como valor de retorno.  Definimos una función utilizando  la palabra clave def  seguida por el nombre de la función y los parámetros de entrada,  seguida por el cuerpo de la función.

13 25-feb-2015CultCompES, Prof. Howard, Tulane University 13 Un ejemplo  Con Spyder, baja el menú File, abre una nuevo documento y entra lo siguiente: 1. from __future__ import division 2. def diversidad_lexica(texto): 3. cuenta_palabras = len(texto) 4. tamano_vocabulario = len(set(texto)) 5. diversidad_lexica = cuenta_palabras / tamano_vocabulario 6. return diversidad_lexica  Guárdalo como "funciones.py".

14 25-feb-2015CultCompES, Prof. Howard, Tulane University 14 Explicación  Observe que hemos creado algunas variables nuevos en el cuerpo de la función.  Estas son las variables locales y no son accesibles fuera de la función.  Una función no hace nada hasta que no se "llame" (o "invoque"), ver diapositiva siguiente.

15 Invócalo  Ejecuta (run) "procesaTexto.py" si no lo has hecho. 1. >>> from funciones import diversidad_lexica 2. >>> diversidad_lexica(texto) 3. 4.868782722513089 25-feb-2015CultCompES, Prof. Howard, Tulane University 15

16 Como extraer el texto de páginas web y proveedores de blogs El próximo día 25-feb-2015CultCompES, Prof. Howard, Tulane University 16


Descargar ppt "Scripts y funciones día18, 25-feb-15 SPAN 4350 Cultura computacional en español Harry Howard Tulane University."

Presentaciones similares


Anuncios Google