Python 中的 `sum()` 函数是什么?如何使用它计算列表或元组中的数字的总和?
发布时间:2023-06-12 17:27:02
sum() 函数是 Python 内置函数中用于计算列表或元组中数字的总和的函数。它接受一个可迭代对象作为输入参数,并返回其所有元素的和。
使用 sum() 函数计算列表或元组中数字的总和非常简单,只需将待计算的列表或元组作为 sum() 函数的输入参数传入即可。
下面是一些使用 sum() 函数计算列表或元组中数字总和的示例:
# 计算一个列表中数字的总和
my_list = [1, 2, 3, 4, 5]
total = sum(my_list)
print(total) # 输出 15
# 计算一个元组中数字的总和
my_tuple = (1, 3, 5, 7, 9)
total = sum(my_tuple)
print(total) # 输出 25
# 计算一个列表中所有偶数的总和
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_sum = sum(x for x in my_list if x % 2 == 0)
print(even_sum) # 输出 30
# 计算一个字典中所有值的总和
my_dict = {'a': 1, 'b': 2, 'c': 3}
dict_sum = sum(my_dict.values())
print(dict_sum) # 输出 6
除了计算列表和元组中数字的总和之外,sum() 函数还可以与其他 Python 内置函数结合使用,例如 map() 和 filter()。下面是一些可以使用 sum() 与 map() 和 filter() 结合使用的示例:
使用 map() 函数和 sum() 函数计算一个列表中所有数字的平方和:
my_list = [1, 2, 3, 4, 5] squared_sum = sum(map(lambda x: x ** 2, my_list)) print(squared_sum) # 输出 55,即 1**2 + 2**2 + 3**2 + 4**2 + 5**2
使用 filter() 函数和 sum() 函数计算一个列表中所有偶数的平方和:
my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] even_squared_sum = sum(filter(lambda x: x % 2 == 0, map(lambda x: x ** 2, my_list))) print(even_squared_sum) # 输出 220,即 2**2 + 4**2 + 6**2 + 8**2 + 10**2
sum() 函数的用法非常简单,但它在处理列表或元组中的数字时非常有用。无论是计算列表或元组中数字的总和还是与其他 Python 内置函数结合使用来实现更复杂的操作,sum() 函数都是 Python 程序员必备的工具之一。
