Pythonの組込み関数eval

eval関数の使い方。
eval関数は引数の文字列をpythonコードとして評価してくれる。例えば、クラス名と同じ文字列を入れると、クラスオブジェクトを返す。

>>> a = 'MyClass'
>>> a
>>> 'MyClass'
>>> b = eval(a)
>>> type(b)
>>> <type 'classobj'>

これは知らなかった。
一方で、数式を計算してくれる。

>>> c = '1+2+3'
>>> eval(c)
6
>>>

このように数式を評価してくれるのは、シェルスクリプトでもおなじみの使い方だ。こちらは知っていた。