我想要一种简单的方法来在Python中执行“计算器API”。现在,我不太在乎计算器将要支持的确切功能集。"1+1"在我们的例子中,我希望它接收一个字符串,说并返回一个带有结果的字符串"2"。有办法eval确保这种事情的安全吗?首先我会做env = {}env["locals"] = Noneenv["globals"] = Noneenv["__name__"] = Noneenv["__file__"] = Noneenv["__builtins__"] = Noneeval(users_str, env)这样调用者就不会弄乱我的局部变量(或查看它们)。但是我敢肯定,我在这里监督很多。eval安全性问题是否可以解决,或者是否有太多微小的细节无法使其正常工作?
添加回答
举报
0/150
提交
取消