diff options
-rw-r--r-- | Calculadora.py | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/Calculadora.py b/Calculadora.py index 72589bf..47c9056 100644 --- a/Calculadora.py +++ b/Calculadora.py @@ -105,6 +105,12 @@ class Calculadora(): if valor[0] == '/' or valor[0] == '*': valor = valor[1:] + if '0x' in valor and valor != '0x': + valor = (valor[valor.find('0x'):] + valor[:valor.find('0x')])[2:] + + elif valor == '0x': + valor = '0' + elif type(valor) == list and len(valor) >= 1: while valor[0] in OPERACIONES: valor.remove(valor[0]) @@ -116,6 +122,10 @@ class Calculadora(): if not x: valor.remove(x) + elif type(valor) == dict: + for x in valor: + valor[x] = self.limpiar_valor(valor[x]) + return valor def reducir_polinomios(self, operacion, diccionario=None): @@ -188,11 +198,13 @@ class Calculadora(): lista.remove(x) lista.insert(numero, x[0] + '1x') + diccionario = self.limpiar_valor(diccionario) + for x in diccionario: resultado = '' lista = diccionario[x] - print lista + #print lista, diccionario for valor in lista: if 'x' in valor and not 'e' in valor: @@ -306,9 +318,9 @@ class Calculadora(): if _resultado_final[0] == '+': _resultado_final = _resultado_final[1:] - return _resultado_final + resultado_final = self.limpiar_valor(_resultado_final) + return resultado_final - #return diccionario if __name__ == '__main__': cerrar = False |