# [Python-Dev] PEP 203 Augmented Assignment

**Guido van Rossum
**
guido@beopen.com

*Thu, 27 Jul 2000 15:49:01 -0500*

[Guido]
>* > Second, what should happen to a slice assignment?
*
[Ping]
>* My vote is: nothing! (Read on.)
*>*
*>* > The basic slice form is:
*>* >
*>* > a[i:j] += b
*>*
*>* What does this mean? I don't see how it could be any different from:
*>*
*>* a[j:j] = b
*
Apparently you haven't used NumPy arrays (matrices). I haven't
either, but I hear they overload + so that A+B is elementwise
addition, and you can write A+1 to add 1 to each element of A.
Thus, for a NumPy programmer, A += 1 would certainly look like A =
A+1, and similar for A += B.
>* It looks to me like going through various contortions to support
*>* augmented assignment to slices is not going to be worth the trouble.
*>*
*>* May i suggest
*>*
*>* >>> a[i:j] += b
*>* SyntaxError: augmented assignment to a slice is not allowed
*
That's what I thought too until I realized that for NumPy arrays
slice+= makes sense.
--Guido van Rossum (home page: http://www.pythonlabs.com/~guido/)