内建函数-eval & exec

eval evaluate的缩写,用来计算python的计算式。带有返回值(可以执行字符串,或者用compile函数编译成的对象)。

exec execute的缩写,用来执行语句,没有返回值(可以执行字符串,或者用compile函数编译成的对象)。


eval(expression, globals=None, locals=None) 

可以用来执行字符串语句,如果不给globals和locals赋值,则eval会取默认的上下文,如下面的语句x根据上下文取10,输出结果为20

x = 10
r = eval('x + 10')
print(r)

exec没有返回值,则不能执行print(r)

exec(object[, globals[, locals]]) 

eval主要用于计算,主要用于执行语句,下面语句可以执行:

exec('print(\'ok\')')

<完>


你可能感兴趣的:(内建函数-eval & exec)