Майстер Михаил (Севастополь) SafeEval 12208
Бурдюгова Мария, 321 SafeEval 12651
n1def safeval(expression, globals=None, locals=None):n1def safeval(expr, globals=None, locals=None):
2    try:2    try:
n3        if 'globals().__delitem__' in expression or 'globals().__setitem__' in expression:n3        if 'globals().__setitem__' in expr or 'globals().__delitem__' in expr:
4            return None4            return None
5        else:5        else:
n6            return eval(expression, globals, locals)n6            return eval(expr, globals, locals)
7    except NameError:7    except NameError:
t8        return expressiont8        return expr
9    except Exception as e:9    except Exception as obj:
10        return e10        return obj
Legends
Colors
 Added 
Changed
Deleted
Links
(f)irst change
(n)ext change
(t)op