## What is the ‘@=’ symbol for in Python?

I know `@`

is for decorators, but what is `@=`

for in Python? Is it just reservation for some future idea?

I know `@`

is for decorators, but what is `@=`

for in Python? Is it just reservation for some future idea?

I recently moved to Python 3.5 and noticed the new matrix multiplication operator (@) sometimes behaves differently from the numpy dot operator. In example, for 3d arrays:

The numpy docs recommend using array instead of matrix for working with matrices. However, unlike octave (which I was using till recently), * doesnâ€™t perform matrix multiplication, you need to use the function matrixmultipy(). I feel this makes the code very unreadable.

I have two matrices

I was trying to figure out the fastest way to do matrix multiplication and tried 3 different ways: