eval函数
eval() 是一个Python内置的函数,可以将字符串作为代码来执行,返回执行后的结果。但得是有效字符串,列如表达式等等。
通熟易懂一点就是exal函数把字符串去掉执行,但字符串必须为表达式之类的代码
如:
pritn(eval('1 + 2'))
# 3
exec函数
和eval函数类似,注意类似
exec函数可以动态地执行一段字符串类型的代码,并返回 None。
source = """
def func(x, y):
return x + y
"""
exec(source)
result = func(2, 3)
print(result)
由于 exec() 可以执行任意的 Python 代码,因此也存在一些安全性问题。如果向 exec() 中传入了恶意代码,就可能会导致程序出现安全漏洞。建议只在必要的情况下使用exec(),并且不要将用户输入的字符串直接作为参数传入。