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)

上のコードはメモですが、こんなことが可能なはず

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Python

次の記事

Python(組み込み関数map())