On 2012-01-13, Devin Jeanpierre <jeanpierr...@gmail.com> wrote: > On Fri, Jan 13, 2012 at 7:30 AM, Chris Angelico <ros...@gmail.com> wrote: >> It seems there's a distinct difference between a+=b (in-place >> addition/concatenation) and a=a+b (always rebinding), which is sorely >> confusing to C programmers. But then, there's a lot about Python >> that's sorely confusing to C programmers. > > I think this is confusing to just about everyone, when they first > encounter it.
That depends on what languages they've used in the past and whether they skip reading any documentation and just assume that all languages work the same way. I would agree that for the majority of new users, they previously used only languages where an assignment operator does a "copy value", and that 90+ percent of the time those new users they assume all languages work that way. I'm not sure what we can do about that -- Python's semantics are well documented. -- Grant Edwards grant.b.edwards Yow! If our behavior is at strict, we do not need fun! gmail.com -- http://mail.python.org/mailman/listinfo/python-list