Python 内建函数列表 > Python 的内置函数 sum
Python 的内置函数 sum() 是一个用于计算可迭代对象中所有元素之和的高效工具。这个函数可以接受一个可迭代对象(如列表、元组、集合等)作为参数,并返回其中所有元素的总和。
基本用法
1numbers = [1, 2, 3, 4, 5] 2total = sum(numbers) # 返回 15 3
可选参数
sum() 函数还接受一个可选的第二个参数 start,用于指定求和的初始值。默认情况下 start 为 0。
1numbers = [1, 2, 3] 2total = sum(numbers, 10) # 返回 16 (1+2+3+10) 3
支持的数据类型
sum() 可以处理各种数值类型,包括:
注意事项
- 不能直接对非数值类型的可迭代对象使用
sum(),除非这些对象实现了__add__方法。
1strings = ["a", "b", "c"] 2# sum(strings) # 会抛出 TypeError
- 对于浮点数求和可能存在精度问题,可以使用
math.fsum()获得更高精度的结果。
应用场景
- 计算列表总和:
1grades = [85, 90, 78, 92] 2total_score = sum(grades)
- 带初始值的累加:
1account_balances = [100.50, 250.75, 300.00] 2initial_balance = 500 3current_balance = sum(account_balances, initial_balance)
- 与其他函数结合使用:
1# 计算列表中偶数的和 2numbers = range(1, 11) 3even_sum = sum(x for x in numbers if x % 2 == 0)
性能考虑
sum() 是使用 C 实现的,对于大型数据集比手动循环累加更高效。在处理非常大的可迭代对象时,建议使用生成器表达式而非先创建完整列表:
1# 更高效的方式 2total = sum(x for x in range(1000000)) 3
sum() 是 Python 中简单但功能强大的内置函数,能够处理各种数值累加任务,是数据分析、科学计算等场景中的常用工具。
《Python 的内置函数 sum》 是转载文章,点击查看原文。
