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

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 程序员必备的工具之一。