Seite 1 von 1

Textfeld als Formel behandeln

Verfasst: Donnerstag 1. September 2016, 14:39
von Brando
Hallo,

ich gebe in einem Textfeld eine Formel ein und will sie dann mit evalf auswerten. Allerdings erhalte ich folgende Fehlermeldung:
AttributeError: 'Text' object has no attribute 'evalf'

Wie kann ich das umgehen?

Re: Textfeld als Formel behandeln

Verfasst: Donnerstag 1. September 2016, 15:10
von Brando
Habe jetzt die Lösung:
l_func= eval("lambda y:"+ z.value)
z ist das Textfeld. Es ist eine Formel mit y als Variable.

Re: Textfeld als Formel behandeln

Verfasst: Donnerstag 1. September 2016, 15:32
von Sirius3
@Brando: Du benutzt doch sympy:

Code: Alles auswählen

expr = sympy.sympify(z.value)
func = lambda y: expr.evalf(subs={'y': y})

Re: Textfeld als Formel behandeln

Verfasst: Donnerstag 1. September 2016, 16:25
von BlackJack
Oder gleich `lambdify()` von `sympy` verwenden. Steht alles im Tutorial. Man muss es halt nur mal durcharbeiten. :roll: