R. David Murray added the comment:
Both of these are FAQs, but to my surprise there don't seem to be answers to
them in the FAQ list. We should add some.
Yes, both of these behaviors is intentional. The first is an important part of
the language design: 'variable' names are just pointers to objects, so x and y
point to the same object. The second is the same issue combined with another
design feature: the objects on the right side of the = in a def statement are
evaluated/created at the time the def statement is executed, not at the time
the function is called. So 'n' points to the same object every time the
function is called.
I'm going to leave this open until someone either points me to the FAQ entries
I missed, or we add them.
--
assignee: - docs@python
components: +Documentation
nosy: +docs@python, r.david.murray
versions: +Python 2.7, Python 3.4
___
Python tracker rep...@bugs.python.org
http://bugs.python.org/issue20135
___
___
Python-bugs-list mailing list
Unsubscribe:
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com