Ich schreibe ein einfaches Python-Skript, um Differentialgleichungen mit der Eulers-Methode zu lösen, und jetzt muss ich den Quellcode jedes Mal ändern, wenn ich eine neue Gleichung lösen will.Python Benutzereingabe Gleichung
(Sicherheit ist nicht, wenn eine Besorgnis im Moment, da dies ein persönliches Projekt ist.)
Meine Frage:
Wäre es möglich, eine Gleichung als Benutzereingabe zu geben und macht es zu eine Variable? Verwenden Sie beispielsweise e=input("enter equation")
, wo Sie y/x
eingeben und e
eine Variable für die spätere Verwendung machen?
#I would like to be able to type in a equation as user input and turn it to a variable for later use in the if and elif segments, example
e=input("Enter your equation here")
e=float(e)
h=input("Ange steglängd: ")
h=float(h)
x=input("Angivet värde på x: ")
x=float(x)
y=input("Värde på y med anseende på x: ")
y=float(y)
z=input("Närmevärde du vill ha för y(x), ange x: ")
z=float(z)
if x<z:
while x<z:
#Type in equation below as e
e=y/x
y=y+h*e
x+=h
print(y)
elif x>z:
while x>z:
e=y/x
y=y-h*e
x-=h
print(y)
Es hängt davon ab, was Sie mit der Gleichung tun möchten. Sie könnten analysieren und in einen abstrakten Syntaxbaum umwandeln. Oder Sie könnten es in Postfix-Notation analysieren. –
Ich plane einfach, die Gleichung als eine Variable zu verwenden, die später verwendet wird, um eine Antwort zu lösen, ziemlich neu bei Python und nicht sicher, wie ich meine Bedürfnisse weiter erklären soll. – Chrizzy
Mögliches Duplikat von [geben Sie eine symbolische Funktion in einem Python-Code ein] (http://stackoverflow.com/questions/15369106/input-a-symbolic-function-in-a-python-code) –