strange behavor....
Mark Wooding
mdw at distorted.org.uk
Sat Nov 13 18:40:36 EST 2010
Steven D'Aprano <steve at REMOVE-THIS-cybersource.com.au> writes:
> On Sat, 13 Nov 2010 21:42:03 +0000, Mark Wooding wrote:
>
> > Dave Angel <davea at ieee.org> writes:
> >
> >> No, an (=) assignment is always an assignment.
> >
> > No. In `foo[0] = bar' it's a method call in disguise.
>
> How does that imply that can't also be an assignment?
Is `splat(34)' an assignment? If so, I think the term's meaning is
grievously diluted. I'd rather say that `splat(34)' might mutate a
value, or have side effects, and reserve the term `assignment' for the
job of explaining how variables work. That seems pretty tricky, because
we're arguing about it a lot, so I think we need sharply defined
concepts so that we don't get more confused than we have to be.
> Of course, you're correct that it's not *necessarily* an assignment,
[...]
> I don't think it helps to overload newbies struggling with the basics
> with such pathological cases though.
I think that we're better off giving `newbies' a conceptual framework
which is robust, so that they can understand pathological situations
when they occur.
-- [mdw]
More information about the Python-list
mailing list