基本上我的问题是说你有一个包含“无”的列表,你将如何尝试检索列表的总和。下面是我尝试过的一个示例,该示例不起作用并且出现错误:TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'
. Thanks
def sumImport(self):
my_list = [[1,2,3,None],[1,2,3],[1,1],[1,1,2,2]]
k = sum(chain.from_iterable(my_list))
return k
您可以使用filter
功能
>>> sum(filter(None, [1,2,3,None]))
6
根据评论更新
通常filter
用法是filter(func, iterable)
,但经过None
因为第一个参数是一个特殊情况,描述于Python 文档 http://docs.python.org/library/functions.html#filter。引用:
如果 function 为 None,则假定为恒等函数,即移除 iterable 中所有为 false 的元素。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)