test3 / models /variables_globales.py
GuillermoPuma
add files
3dc3be1
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={'alfa':'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 ={
'numero': numero,
'flotante': flotante,
'cadena': cadena,
'lista': lista,
}