funcion para tokenizar cadena
Publicado por Horacio (19 intervenciones) el 25/05/2017 14:19:03
Buenas gente, me ayudarían con lo siguiente:
la idea de la función es que reciba como parámetro un str que corresponde a una función matemática y la devuelva separada cada termino por un espacio en blanco:
ej :
'2x+3' -> 2x +3
'-2x^3+2x^2' -> -2x^3 +2x^2
lo que hice hasta ahora funciona con los ejemplos mencionados:
el caso que no estoy logrando es como el siguiente (x^3+2)/3
donde seria equivalente a x^3/3 +2/3
la idea de la función es que reciba como parámetro un str que corresponde a una función matemática y la devuelva separada cada termino por un espacio en blanco:
ej :
'2x+3' -> 2x +3
'-2x^3+2x^2' -> -2x^3 +2x^2
lo que hice hasta ahora funciona con los ejemplos mencionados:
1
2
3
4
5
6
7
8
9
10
def formatear(funcion):
salida = ""
j = 0
for i in range(0, len(funcion)):
if funcion[i] in ['-', '+']:
if not funcion[i-1] in ['^', '(']:
salida += funcion[j:i] + " "
j = i
salida += funcion[j:]
return salida
el caso que no estoy logrando es como el siguiente (x^3+2)/3
donde seria equivalente a x^3/3 +2/3
Valora esta pregunta
0