情况一,一维矩阵元素内部长度不同:
import numpy as np
a = np.array([4,1])
print(a)
b = np.array([7,2,3])
a*b
情况二,维度不同,低纬度的(1,3)其中有1,但是a由于除了1以外没用任何的维度和b相同,所以a和b根本无法做数组运算,但换成(1,3)和(4,1),a和b就有相同的一边,就可按位做运算:
a = np.arange(2).reshape(1,2)
# 可广播的如下2个
# a = np.arange(3).reshape(1,3)
# a = np.arange(4).reshape(4,1)
b = np.arange(0,60).reshape(5,4,3)
print(a)
print(b)
a+b
其余的更多的情况都能广播,就不做讨论,往后有需要再完善。