欢迎访问宙启技术站
智能推送

Python中的sum()函数及其高级应用

发布时间:2023-06-22 18:37:02

Python中的sum()函数是内置函数之一,它用于对可迭代对象中的元素进行求和操作。它可以接受两个参数:可迭代对象和初始值(可选)。如果只指定可迭代对象,则初始值默认为0。

1. 直接求和一个序列

最常见的使用sum()函数的方式是直接对一个序列进行求和操作。例如:

a = [1, 2, 3, 4, 5]

sum_a = sum(a)

print(sum_a)

输出结果为:15

2. 对可迭代对象中某些元素进行求和

sum()函数还可以接受一个可迭代对象和一个函数,函数用于指定对哪些元素进行求和操作。例如:

a = [1, 2, 3, 4, 5]

sum_a = sum(filter(lambda x: x % 2 == 0, a))

print(sum_a)

这个例子中,我们对a中的偶数进行求和操作,输出结果为:6

3. 对多个序列进行求和

sum()函数还可以用于对多个序列进行求和操作。例如:

a = [1, 2, 3, 4, 5]

b = [6, 7, 8, 9, 10]

sum_ab = sum(zip(a, b))

print(sum_ab)

zip()函数可以用于将多个序列配对,输出结果为:55

4. 返回浮点数结果

sum()函数默认返回整数结果,但是可以通过指定初始值为浮点数来返回浮点数结果。例如:

a = [1, 2, 3, 4, 5]

sum_float = sum(a, 0.0)

print(sum_float)

输出结果为:15.0

5. 高级用法:加权求和

有时候需要对序列中的元素进行加权求和操作,这个时候就需要使用sum()函数的高级用法。例如:

a = [1, 2, 3, 4, 5]

weights = [0.1, 0.2, 0.3, 0.4, 0.5]

weighted_sum = sum([x * w for x, w in zip(a, weights)])

print(weighted_sum)

这个例子中,我们对a中的元素进行加权求和,输出结果为:3.5

总结:sum()函数是Python中一个非常实用的函数,可以用于对序列或可迭代对象中的元素进行求和操作,同时还可以用于对某些元素进行求和、对多个序列进行求和和加权求和操作。