看一个例子就懂了
c = array([[[0, 1, 2, 0, 1, 2]],
[[0, 1, 2, 0, 1, 2]]])
print('{0}
'.format(c.shape))
print('{0}
'.format(c.sum())) //①
print('{0}
'.format(c.sum(axis=0))) //②
print('{0}
'.format(c.sum(axis=1))) //③
print('{0}
'.format(c.sum(axis=2))) //④
结果
(2, 1, 6)
12
[[0, 2, 4, 0, 2, 4]]
[[0, 1, 2, 0, 1, 2]
[0, 1, 2, 0, 1, 2]]
[[6]
[6]]
①不带参数,数组内的所有元素相加得到
②axis=0,在第一维度上执行相加,我们已经知道这个数组的shape,第一维度对应2个元素,所以是两个元素的相加,即[0, 1, 2, 0, 1, 2]和[0, 1, 2, 0, 1, 2]相加,得到[0, 2, 4, 0, 2, 4]。
③axis=1,在第二维度上执行相加,第二维度对应1个元素,所以只有[0, 1, 2, 0, 1, 2]自己玩加法,自然得到的还是自己咯
④axis=2,在第三维度上执行相加,第三维度对应6个元素,所以是6个元素的相加。
观察到,执行完sum函数后,结果都降且仅降一个维度。