目录
求相似度时看到的,碰到一个疑问的地方,先写下来。
Python内置的sum函数
作用:对可迭代对象进行求和计算。
sum(iterable[, start])
- iterable -- 可迭代对象,如:列表、元组、集合。
- start -- 指定相加的参数,如果没有设置这个值,默认为0。
- 返回计算结果。
参考:https://www.runoob.com/python/python-func-sum.html
笔者的理解
以sum(a,b)为例,对矩阵a中数值相加:2+1=3,
b中的两个数分别作为起始数(start),将3与它们分别相加3+5 = 8, 3+3 = 6,
sum(a,b)输出结果为[8, 6]
如此应该可以解释为什么sum(c, b)与sum(b, c)结果不同
代码如下:
import numpy as np
a = np.array([2, 1])
b = np.array([5, 3])
c = np.array([5, 4])
print("sum(a,b):",sum(a,b)) # 输出结果:[8 6]
print("sum(sum(a,b)):",sum(sum(a,b))) # 输出结果:14
print("sum(c,b):",sum(c,b)) # 输出结果:[14 12]
print("sum(sum(c,b)):",sum(sum(c,b))) # 输出结果:26
print("sum(b,c):",sum(b,c)) # 输出结果:[13 12]
print("sum(sum(b,c)):",sum(sum(b,c))) # 输出结果:25
拓展:NumPy中sum函数
NumPy中sum函数的作用是对元素求和。
- 无参时,所有全加;
- axis=0,按列相加;
- axis=1,按行相加;
参考文章:https://blog.youkuaiyun.com/myhome908/article/details/85272559