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