如果你看不明白上面的计算过程, 我下面用一张图做一下演示。
从图中可以看到左边的数组shape是(2, 3),右边的数组shape是(2, 1),满足Numpy对于广播机制的要求。Numpy会自动对右边数组shape为1的维度进行广播,也就是将它复制若干份使得它们的shape相等。如果你把左边的数组看成是若干个听广播的人,右侧的数组看成是消息的话,那么广播机制就是把消息复制若干份,让每一个听广播的人听到同样的内容。所以这个名字还是很形象的。
切片Python中数组为人称道的很重要的一点就是它的切片操作非常方便,Numpy作为依托于Python的计算包,自然也继承了这一点,所以在Numpy当中,我们也可以很方便地使用切片功能。切片的使用方法和Python基本是一样的。
我们用上下标加上冒号来表示我们想要切片的范围, 和Python一样,这是一个左闭右开的区间。
我们也可以省略其中的一个范围,只提供上界或者是下界:
我们还可以上下界都省略,表示全部都要,以及倒序切片的方法也和Python是一样的。