python sum()各种类型计算总和

2021-01-25 10:29:25 浏览数 (1)

参考链接: Python sum()

时间有点赶注释就写在代码里面了 ,本次包含了 python 元组,列表,字典 以及numpy的ndarray 数组的求和 

直接看代码吧 

#encoding:utf-8

import numpy as np

import operator

#字典形式的计算值总和

dict = {"a":12,"b":22,"v":34}

print(sum(dict.values()))

#元组,列表形式计算值总和

listA = [i for i in range(1,11)]

print(listA)

print(sum(listA))

tupleA  =tuple(listA)

print(tupleA)

print(sum(tupleA))

'''

#ndarray 计算值的总和呢?ndarray是多维的,计算哪一维度的总和可以用numpy库中对象ndarray.sum(axis = nd),

# nd表示维度0,1,2...

#0表示按照一个1维计算所有值的总和,得到的值就是 同一列的和 的一维矩阵,,

#1则表示按照2维计算总和,得到的 每一行的 总和

'''

ndarrayA = np.array(listA)

ndarrayA = np.tile(ndarrayA,(2,2))#用tile方法铺成2*2的listA的矩阵

print("ndarrayA = n",ndarrayA)

print("sum(ndarrayA) = n",sum(ndarrayA))

print("ndarrayA.sum(axis=0) = n",ndarrayA.sum(axis=0))

print("ndarrayA.sum(axis=1) = n",ndarrayA.sum(axis=1))

#那么np.sum计算二维的时候计算的结果是[m,n],m,n是什么意思?,只需要在tile中的矩阵更改一下不一致的行和列即可验证

#更改为3*2

ndarrayA = np.array(listA)

ndarrayA = np.tile(ndarrayA,(2,3))#用tile方法铺成2*2的listA的矩阵

print("ndarrayA = n",ndarrayA)

print("sum(ndarrayA) = n",sum(ndarrayA))

print("ndarrayA.sum(axis=0) = n",ndarrayA.sum(axis=0))

print("ndarrayA.sum(axis=1) = n",ndarrayA.sum(axis=1))

#由结构可见是一个2的大小,说明sum计算的是每一行的总和

0 人点赞