在 Python 中对包含 None 值的列表求和
总结一个包含 None 值的列表:
- 使用 filter() 函数从列表中删除 None 值。
- 将 filter 对象传递给 sum 函数。
- sum() 函数将对列表中的数字求和。
my_list = [2, None, 4, None, 6, None]
total = sum(filter(None, my_list))
print(total) # ?️ 12
我们使用 filter()
函数从列表中删除 None 值。
filter()
函数将一个函数和一个迭代器作为参数,并从迭代器的元素构造一个迭代器,函数为其返回一个真值。
如果为函数参数传递 None ,则可迭代的所有虚假元素都将被删除。
my_list = [2, None, 4, None, 6, None]
# 👇️ [2, 4, 6]
print(list(filter(None, my_list)))
所有不真实的值都被认为是虚假的。 Python 中的虚假值是:
- 定义为虚假的常量:None 和 False。
- 任何数字类型的 0(零)
- 空序列和集合:””(空字符串)、()(空元组)、[](空列表)、{}(空字典)、set()(空集)、range(0)(空范围)。
最后一步是将过滤器对象传递给 sum()
函数。
my_list = [2, None, 4, None, 6, None]
total = sum(filter(None, my_list))
print(total) # 👉️ 12
sum()
函数接受一个可迭代对象,从左到右对其项求和并返回总数。
print(sum([2, 4, 6])) # 👉️ 12
sum()
函数采用以下 2 个参数:
- iterable 要对其项目求和的可迭代对象
- start 将起始值和可迭代的项目相加。 sum 默认为 0(可选)
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布,任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站。本站所有源码与软件均为原作者提供,仅供学习和研究使用。如您对本站的相关版权有任何异议,或者认为侵犯了您的合法权益,请及时通知我们处理。