eval( 'import math' )
ian.g.kelly at gmail.com
Thu Feb 4 09:30:14 EST 2016
On Thu, Feb 4, 2016 at 6:33 AM, 阎兆珣 <yanzhaoxun at greendh.com> wrote:
> Excuse me for the same problem in Python 3.4.2-32bit
> I just discovered that <eval()> function does not necessarily take the
> string input and transfer it to a command to execute.
> So is there a problem with my assumption?
eval evaluates an expression, not a statement. For that, you would use exec.
If you're just trying to import though, then you don't need it at all.
Use the importlib.import_module function instead to import a module
determined at runtime. This is more secure than eval or exec, which
can cause any arbitrary Python code to be executed.
More information about the Python-list