我有一组要用于限制python eval()的函数。问题是,此过程中一些合理的输入是我不想评估的运算符。根据其他答案,我尝试删除了内置函数和本地变量,但仍在评估运算符。如何评估仅使用我提供的功能?
def foo(a,b):
return str(a) + '*' + str(b)
kwards = {'foo':foo}
eval("foo(2,2)*2", {'__builtins__':None}, kwards)
'2*22*2'
所需输出:“ 2 * 2 * 2”