This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author r.david.murray
Recipients docs@python, m123orning, r.david.murray
Date 2014-01-06.03:53:54
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1388980434.95.0.966114421626.issue20135@psf.upfronthosting.co.za>
In-reply-to
Content
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.
History
Date User Action Args
2014-01-06 03:53:55r.david.murraysetrecipients: + r.david.murray, docs@python, m123orning
2014-01-06 03:53:54r.david.murraysetmessageid: <1388980434.95.0.966114421626.issue20135@psf.upfronthosting.co.za>
2014-01-06 03:53:54r.david.murraylinkissue20135 messages
2014-01-06 03:53:54r.david.murraycreate