Python eval() 函数

eval() 函数用来执行一个字符串表达式,并返回表达式的值。

语法:

eval(expression[, globals[, locals]])

expression – 表达式。
globals – 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。
locals – 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

漏洞

由于eval将执行传递给它的任何东西,攻击者可以很容易地调用危险的函数和获取敏感数据
解决方法:通过globals 或 locals 显式传递eval可以访问的函数或变量列表。参数需要以字典的形式传递。

如上所述,由于安全原因,Eval()并不常用。
https://www.geeksforgeeks.org/eval-in-python/

你可能感兴趣的:(python)