Antoon Pardon wrote: > But I'll get back at what seems you actually wanted to say: > That there is no way to rebind 'x' or in my case 'l' and > with that I have to agree although I personnaly find that > a lack in python
'no way' is a bit strong. You can use hacks such as the one I posted a couple of weeks back: >>> import hack >>> def F(): l = 'hello there' def get(): return l return hack.mksetter(lambda: l), get >>> set, get = F() >>> get() 'hello there' >>> set('testing') 'testing' >>> get() 'testing' 'no official, supported, or portable way' would be more accurate. I've never actually felt the need to set variables from inside a nested function, and I wouldn't use a hack like this in production code unless there was a *very* good reason for it, but since I figured out how to actually do it I'm suprised just how many things could actually be simplified if there was an official way to do this. -- http://mail.python.org/mailman/listinfo/python-list