Python(組み込み関数eval())
eval("1+5+9")
eval("input('test:')")
def test(a,b):
expr = input("式を入力してください:")
return eval(expr)
test(5,10)
eval("文字列")は文字列内の処理を翻訳して実行するという非常に強力な組み込み関数です。
通常、演算子は単体でリストやタプルに登録することはできませんが、文字列として登録し、結合してeval("")に渡せば、式の組み合わせを自由に変化させて処理を行うことが可能になります。
import random
a=["a0","b0","c0","d0"]
b=["*","+","-","/","%"]
c=["a1","b1","c1","d1"]
d=a[random.randint(0,len(a)-1)]+b[random.randint(0,len(b)-1)]+c[random.randint(0,len(c)-1)]
a0=・・・・
eval(d)
上のコードはメモですが、こんなことが可能なはず