eval()是个功能很强大的函数,这同时也意味着通常你驾驭不了它。一般来说你用到这个函数说明你的设计在哪里出错了。
仅仅有几个例外可以考虑运用 eval():
eval()的主要问题是引入严重的安全漏洞,没有任何方法能够限制这个漏洞的危害,因为谁也不能保证某个输入一定不会来自恶意用户。
在 Python 中,一行代码往往能做很多很恐怖的事情,比如
__import__("os").system("rm -rf /*")