ユーザーからの入力として戻り式を使用してユーザー定義関数を定義するプログラムを作成しようとしています。関数がx + yを返す必要があるとします。Pythonでは、次のように実行できます---
def f(x,y):
return x+y
しかし、私はのようなものが欲しい
a=input("enter the function:")
def f(x,y):
return a
print f(2,3)
aの入力としてx + yを入力すると、5が表示されます(Sympyまたはraw_functionとeval()を使用せずに)Pythonでどのように実行できますか?
Pyparsingのlibには、数式を解析します。
たとえば、次のように使用できます。
from pyparsing import NumericStringParser
nsp = NumericStringParser()
print(nsp.eval('2+3')) # 5
変数を数値に置き換える必要があります。
本当に外部評価ライブラリを使用したくない場合は、RPNのアプリケーションが解決策になる可能性があります。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加