Flavio enlightened us with:
> Can anyone tell me why, if the following code works, I should not do
> this?
>
> def fun(a=1,b=2,**args):
>
> print 'locals:',locals()
> locals().update(args)
> print locals()
Because it's very, very, very insecure. What would happen if someone
found a way to call that function? It could replace any name in the
locals dictionary, including functions from __builtins__. In other
words: probably the whole program could be taken over by other code by
just one call to that function.
Sybren
--
The problem with the world is stupidity. Not saying there should be a
capital punishment for stupidity, but why don't we just take the
safety labels off of everything and let the problem solve itself?
Frank Zappa
--
http://mail.python.org/mailman/listinfo/python-list