> I think you are making an unwarranted assumption about what is "more > expected". I presume you are thinking that the expected behaviour is that > foo() should: > > print global x (5) > assign 1 to local x > print local x (1) > > If we implemented this change, there would be no more questions about > UnboundLocalError, but instead there would be lots of questions like "why is > it that globals revert to their old value after I change them in a > function?". > True, but this is less confusing and follows the rules in a more straightforward way. x = 1 without a 'global x' assigns a local x, this make sense and is similar to what happens in C where an inner declaration temporarily shadows a global one. Eli -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://mail.python.org/pipermail/python-dev/attachments/20110509/20553648/attachment.html>
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4