Spaces:
Sleeping
Sleeping
| def numero(text): | |
| """Convierte un texto de numero en numero entero (int) | |
| Parametros | |
| ---------- | |
| text: list | |
| Serie de valores | |
| Regresa | |
| --------- | |
| dict_numeros: int | |
| El número correspondiente | |
| """ | |
| global dict_numeros | |
| # Como sabemos que siempre sera el primer elemento el valor despues | |
| # de número (eg. cuatro or veintecinco) | |
| numero_str = text[0] | |
| return dict_numeros[numero_str] | |
| def flotante(text): | |
| """Convierte un texto de numero en numero floatante (float) | |
| Parametros | |
| ---------- | |
| text: list | |
| Serie de valores | |
| Regresa | |
| --------- | |
| dict_numeros: float | |
| El número correspondiente en floatante (eg 3.4) | |
| """ | |
| global dict_numeros | |
| text = " ".join(text) | |
| before_keyword, keyword, after_keyword = text.partition('punto') | |
| print(before_keyword) | |
| print(after_keyword) | |
| # Obtenemos los dos numeros antes y despues del punto | |
| before_num = before_keyword.strip().split(' ')[0] | |
| after_num = after_keyword.strip().split(' ')[0] | |
| # Hacemos el mapeo uno -> 1 | |
| num1_int = dict_numeros[before_num] | |
| num2_int = dict_numeros[after_num] | |
| return float(str(num1_int) + '.' + str(num2_int)) | |
| def cadena(text): | |
| """Convierte un texto de numero en string (str) | |
| Parametros | |
| ---------- | |
| text: list | |
| Serie de valores | |
| Regresa | |
| --------- | |
| string: str | |
| Una cadena con el contenido del texto | |
| """ | |
| numero_str = text[:] | |
| return ' '.join(text) | |
| def lista(text): | |
| """Convierte un texto de numero en string (str) | |
| Parametros | |
| ---------- | |
| text: list | |
| Serie de valores | |
| Regresa | |
| --------- | |
| lista: list | |
| Una lista vacia | |
| """ | |
| return [] | |
| diccionario_fonetico={'andrea':'a', | |
| 'bravo':'b', | |
| 'carlos':'c', | |
| 'delta':'d', | |
| 'eduardo':'e', | |
| 'fernando':'f', | |
| 'garcia':'g', | |
| 'hotel':'h', | |
| 'india':'i', | |
| 'julieta':'j', | |
| 'kilo':'k', | |
| 'lima':'l', | |
| 'miguel':'m', | |
| 'noviembre':'n', | |
| 'oscar':'o', | |
| 'papa':'p', | |
| 'queretaro':'q', | |
| 'romero':'', | |
| 'sierra':'s', | |
| 'tango':'t', | |
| 'uniforme':'u', | |
| 'victor':'v', | |
| 'wafle':'w', | |
| 'equis':'x', | |
| 'yarda':'y', | |
| 'llarda':'y', | |
| 'espacio':' '} | |
| # Separa en operadores comunes | |
| # si esto se lematiza puedes agarrar todas las frases de la forma suma, sumar, etc. | |
| dict_operaciones={ | |
| 'producto':'*','mas':'+','menos':'-','concatena':'+','entre':'/','modulo':'%' | |
| } | |
| dict_numeros = { | |
| 'cero':0, | |
| 'uno': 1, | |
| 'dos': 2, | |
| 'tres': 3, | |
| 'cuatro':4, | |
| 'cinco': 5, | |
| 'seis': 6, | |
| 'siete': 7, | |
| 'ocho': 8, | |
| 'nueve': 9, | |
| 'diez': 10, | |
| 'once': 11, | |
| 'doce': 12, | |
| 'trece': 13, | |
| 'catorce': 14, | |
| 'quince': 15, | |
| 'dieciseis': 16, | |
| 'diecisiete': 17, | |
| 'dieciocho': 18, | |
| 'diecinueve': 19, | |
| 'veinte': 20, | |
| 'treinta': 30, | |
| 'cuarenta': 40, | |
| 'cicuenta': 50, | |
| } | |
| # Diccionario de funciones | |
| tipos_datos ={ | |
| 'natural': numero, | |
| 'flotante': flotante, | |
| 'cadena': cadena, | |
| 'lista': lista, | |
| } |