Seite 1 von 1

Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 20:01
von Back2basic
moinsen,

gibt es eine möglichst einfache Lösung einen String so zu nutzen, dass ich mit diesem einer Variablen eine Int, float etc.
Wert zuweisen kann ?

zb.

Code: Alles auswählen


def func (func_str):  

x = 1

# func_str könnte ja zb. x+3 lauten ... so das y = 4 waere und nicht y = "x+3"
y = func_str
 

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 20:38
von pillmuncher
guckstu hier.

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 20:40
von Hyperion
Per String ist das nicht so einfach - und nein, ``eval`` will man eigentlich nicht nutzen ;-)

Wozu genau brauchst Du das? Bzw. was genau willst Du machen. Ich vermute hier ein XY-Problem, daher wären Hintergrundinfos wirklich wichtig.

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 21:02
von Back2basic
ich will einfach einer Methode einen Funktionsstring übergeben damit ich zb. Grenzwert, Nullstellen etc. berechnen kann ...

zb. y = "string" wobei string => (x+3)/4 oder x**2 sein kann.


Damit könnte ich dann halt abbilden...

Wäre eine Alternative statt jetzt immer der Funktion eine Funktion etc. mitzugeben ...


THX für den Typ mit dem AST Modul, werde ich mal probieren ...

Weitere Ideen sind natürlich willkommen....

Schon mal besten Dank...

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 21:19
von mutetella
Back2basic hat geschrieben:Wäre eine Alternative statt jetzt immer der Funktion eine Funktion etc. mitzugeben ...
Was ist daran schlimm, einer Funktion eine Funktion zu geben?

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 21:25
von Hyperion
Du verschweigst uns immer noch, *was* Du eigentlich erreichen willst? Du willst ja ein bestimmtes Problem damit lösen, einen String mit einem mathematischen Term auszuwerten. Die Frage ist, was ist das ursprüngliche Problem? Evtl. ist Dein Lösungsansatz nicht optimal und es gibt eine sinnvollere Alternative.

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 21:49
von Back2basic
bestimmt gibt es bessere Varianten, der Sinn dient der Abbildung, also jedem x ein f(x)

und f(x) = expression .... Der Ausdruck wird ja im Methodenkopf übergeben...
So ist die Methode recht flexible und kann halt auf Funktionen zugreifen die dann halt eingetippt werden zb. x+3 oder x **2

P.S

Die Methode die diese Funktion übergeben wird soll einfach die Nullstellen berechnen. Also f(x) == 0
und das halt mit möglichst vielen vielen Funktionen ...

Re: Funktions(string) als math. Zuweisung nutzen

Verfasst: Montag 29. Oktober 2012, 22:06
von Hyperion
Also willst Du eine Art CAS bauen? Dann schau Dir doch mal SymPy an.