Python中的sum()函数使用详解
Python中的sum()函数是一个非常常用的函数,用于对序列进行求和操作。sum()函数可以对列表、元组、集合、字典等可迭代对象的元素进行求和,并返回总和。本文主要介绍Python中的sum()函数用法和实例应用。
概括
sum(iterable[, start=0])
函数参数
- iterable:可迭代对象,如列表、元组、集合等。
- start:起始值,返回结果为所有元素相加后的和加上起始值。
返回值
返回可迭代对象的所有元素之和,返回值的类型取决于元素的类型和求和的结果。
函数用法
sum()函数的主要功能是对可迭代对象进行求和操作。在针对数字列表、元组、集合和字典操作时,返回的都是数字类型。使用方法如下:
- 求列表或元组中所有数的和
numbers = [1, 2, 3, 4, 5]
total = sum(numbers)
print(total) # 输出 15
numbers = (1, 2, 3, 4, 5)
total = sum(numbers)
print(total) # 输出 15
- 求集合中所有数的和
numbers = {1, 2, 3, 4, 5}
total = sum(numbers)
print(total) # 输出 15
- 求字典中所有值的和
my_dict = {'a': 1, 'b': 2, 'c': 3, 'd': 4, 'e': 5}
total = sum(my_dict.values())
print(total) # 输出 15
- 求一个列表中的所有数字的和,并加上一个起始值
numbers = [1, 2, 3, 4, 5]
total = sum(numbers, 10)
print(total) # 输出 25
- 使用lambda函数作为规则进行求和
numbers = [1, 2, 3, 4, 5]
total = sum(numbers, lambda x: x * 2)
print(total) # 输出 30
我们可以在sum()中添加lambda函数来指定自己的规则。例如,上面的例子中可以将每个数字都乘以2再求和,结果为30。
函数实例应用
1、统计元素出现的频率
nums = [4, 4, 4, 5, 6, 6, 6, 6, 7, 7, 7]
counts = {}
for num in nums:
counts[num] = counts.get(num, 0) + 1
print(counts) # 输出 {4: 3, 5: 1, 6: 4, 7: 3}
2、计算列表中平方和
numbers = [1, 2, 3, 4, 5]
total = sum(x ** 2 for x in numbers)
print(total) # 输出 55
3、计算列表中偶数项的和
numbers = [1, 2, 3, 4, 5]
total = sum(x for x in numbers if x % 2 == 0)
print(total) # 输出 6
4、计算列表中差异的平均数
numbers = [5, 6, 10, 15, 20]
diffs = [numbers[i + 1] - numbers[i] for i in range(len(numbers) - 1)]
avg = sum(diffs) / len(diffs)
print(avg) # 输出 4.8
总结
Python中的sum()函数是一个很常用的函数,用于对可迭代对象中的元素进行求和操作。我们可以使用sum()函数求出列表、元组、集合和字典的元素之和,并且可以给sum()函数添加起始值、lambda函数、大量循环语句和条件语句来满足不同的需求。在实际编程中,我们可以灵活运用sum()函数来简化代码和提高效率。
