eval in Python works like in many functional programming languages. It evaluates the input string as if it were a Python expression. Python's eval can only handle expressions, so is pretty limited.
x = 1 y = eval( "x + 1" ) # 2 f = eval( "lambda x: x * x" ) g = f( 10 ) # 100
Tried with: Python 3.2