大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
sum是python中一个很实用的函数,但是要注意它的使用,我第一次用的时候,就把它这样用了:
让客户满意是我们工作的目标,不断超越客户的期望值来自于我们对这个行业的热爱。我们立志把好的技术通过有效、简单的方式提供给客户,将通过不懈努力成为客户在信息化领域值得信任、有价值的长期合作伙伴,公司提供的服务项目有:域名与空间、虚拟空间、营销软件、网站建设、剑阁网站维护、网站推广。
s = sum(1,2,3)
结果就悲剧啦
其实sum()的参数是一个list
例如:
sum([1,2,3])
sum(range(1,11))
还有一个比较有意思的用法
a = range(1,11)
b = range(1,10)
c = sum([item for item in a if item in b])
print c
输出:
45
在开发语言中,sum函数是求和函数,用于求多个数据的和。而在python中,虽然也是求和函数,但稍微有些差别,sum()传入的参数得是可迭代对象(比如列表就是一个可迭代对象),返回这个被传入可迭代对象内参数的和。
相关推荐:《Python入门教程》
比如:
还可以给一个初始值,比如:
这样得到的结果就是在20基础之上再加上可迭代对象内参数的和。
补充一句,sum函数既然只能传入可迭代对象,那么整形数据是不行的,会报错,比如:
1、Python中自带的sum函数
在Python中自带的函数中,它输入的对象可以是一个可迭代对象,比方说数组、列表,在使用的时候sum最多有两个参数,如果是一个参数的情况下,那么第一个参数是可迭代的,当有两个参数时,第二个参数只能是个数。举个例子:
sum([1,2,3],2) 运行结果:8 三个元素相加之后再加2sum((1,2,3)) 运行结果:6sum({1,2,3}) 运行结果:6
2、numpy中的sum函数
这里的sum函数就是我们平时用的,同样的可以是元组、数组、列表,在数组中,可以指定维度的相加,默认情况下axis=none,sum将所有的元素相加,举个例子:
1、当sum没有参数的时候,那么会将所有的元素相加;
2、如果axis参数等于0时,则是按列相加;
举个例子:
import numpy as np b=np.array([[3,7,6],[2,4,5]])print(b.sum(axis=0))
相当于是:
[[3,7,6], [2,4,5]]
每一列对应元素相加3+2,7+4,6+5
运行结果输出:
[5 11 11]
3、当axis参数等于1时,就是按行相加,例如:
import numpy as np b=np.array([[3,7,6],[2,4,5]])print(b.sum(axis=1))
运行结果输出为:
[16 11]
在上面的实例中,就相当于是3+7+6,2+4+5,即每一行的元素分别相加。
关于如何使用Python中的sum函数?Python中sum函数的多种用法的内容就分享到这里了,希望大家可以通过对这这篇文章的学习,掌握到更多sum函数的使用方法。
sum(iterable[, start]) ,iterable为可迭代对象,如:
sum([ ], start) #iterable为list列表
sum(( ), start ) #iterable为tuple元组
......
最后的值 = 可迭代对象里面的数相加的值 + start的值
start默认为0,如果不写就是0,为0时可以不写
即sum()的参数最多为两个,其中第一个必须为iterable,例如:
sum([1, 2, 3,], 4)
10
sum((1, 2), 3)
6
如果你写成sum([1,2,3]),start就是默认值 0
sum([1, 2, 3])
6
sum([ ], 2)
2
sum(( ), )
sum([1, 2] , 0)
3
当然iterable为dictionary字典时也是可以的:
sum({1: 'b', 7: 'a'})
8
sum({1:'b', 7:'a'}, 9)
17
下面这些写法目前是不被接受的(以list为例,其他iterable同理):
一、
sum([1,2],[3,4])
Traceback (most recent call last):
File "pyshell#115", line 1, in module
sum([1,2],[3,4])
TypeError: can only concatenate list (not "int") to list
二、
sum(4,[1,2,3])
Traceback (most recent call last):
File "pyshell#116", line 1, in module
sum(4,[1,2,3])
TypeError: 'int' object is not iterable
三、
sum()
Traceback (most recent call last):
File "pyshell#117", line 1, in module
sum()
TypeError: sum expected at least 1 arguments, got 0
四、
sum(,2)
SyntaxError: invalid syntax
五、
sum(1,3)
Traceback (most recent call last):
File "pyshell#112", line 1, in module
sum(1,3)
TypeError: 'int' object is not iterable
附其官方解释:
help(sum)
Help on built-in function sum in module builtins:
sum(...)
sum(iterable[, start]) - value
Return the sum of an iterable of numbers (NOT strings) plus the value
of parameter 'start' (which defaults to 0). When the iterable is
empty, return start.
首先,定义一个数组,保存求和的所有整数。
输入求和的整数个数,保存在变量n中。
用for循环,控制输入所有的求和整数。
输入所有的求和整数,保存在数组中。
输出所有求和的整数,如下图所示。
调用sum函数,计算所有整数的和。
最后,输出计算得到的所有整数和。
输出结果如下:
推荐教程:python教程以上就是小编分享的关于python如何用sum函数求和的详细内容希望对大家有所帮助,更多有关python教程请关注环球青藤其它相关文章!