一:
python3中内置的sum函数用法:
sum(iterable, start)
iterable:可迭代对象(如列表,元组,集合)
start:指定相加的参数,如果没有设置这个值,默认为0
返回一个指定相加的参数即stardt(默认为0)加上一个数字的可迭代对象的和,这个函数只能用数字类型的参数,不能用非数字类型.sum后面必须跟一个数字的可迭代对象iterable,不能只跟数字,如:
total_sum = sum(0) print(total_sum)
TypeError: ‘int’ object is not iterable
可迭代对象可以是列表list,元组tuple,集合set,range()
>>>sum([1,2,3],2)
>>>8
>>>sum((1,2,3))
>>>6
>>>sum({1,2,3})
>>>6
>>>sum(range(5))
>>>10
应用:
输入某年某月某日,判断这一天是这一年的第几天?
mouth_list = [31,28,31,30,31,30,31,31,30,31,30,31] year = int(input("请输入年数:")) mouth = int(input("请输入月数:")) day = int(input("请输入天数:")) if year % 400 == 0 or (year % 100 != 0 and year % 4 == 0): mouth_list[1] = 29 print("这是%d年的第%d天" % (year, sum(mouth_list[0:mouth-1])+day))
二:
numpy模块中的sum函数用法:
python3中若没有numpy模块,可以按windows键+R,输入cmd,在命令窗输入pip install numpy,这样就自动添加到python3中的site-packages,可以导入这个numpy模块计算矩阵,而python3中内置的sum函数是不能计算矩阵的.
numpy中sum函数没有axis参数表示全部相加,axis=0表示按列相加,axis=1表示按照行的方向相加
import numpy as np
np.sum([[1,2,3], [4,5,6]])
>>>21(1+2+3+4+5+6)
np.sum([[1,2,3],
[4,5,6]], axis=0)
>>>[5, 7, 9]
np.sum([[1,2,3],[4,5,6]], axis=1)
>>>[6, 15]