我正在接收每个列表中每一行的计数,我希望对整个列表的每个特定值求和,(包括嵌套的列表)
[[3],[4],][1],[3]] = * 11
是我想要的结果。
示例: 代码
ar1 = [
['jam','apple','pear'],
['toes','tail','pinky','liar'],
['aha!'],
['jam','apple','pear']
]
def function(arg1)
heads = 0
for i in arg1:
heads += arg1.count(i)
print heads
我之所以使用它,print
是因为我不知道如何编译和调试除print语句以外的任何内容并重新检查工作,所以请不要燃烧。(新手警报)
示例: 结果
['jam','apple','pear'] 1
['toes','tail','pinky','liar'] 2
['aha!'] 3
['jam','apple','pear'] 4
我更喜欢提示,或者提示我应该应用哪种方法或示例。我绝不期待解决方案。一世
您有一些选择:
1.展平嵌套列表并计算总列表的长度:
>>> len(reduce(lambda x,y:x+y,ar1))
11
或者,您可以遍历列表并汇总所有子列表的长度,可以使用sum
function内的生成器表达式来实现:
>>> sum(len(i) for i in ar1)
11
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句