首先,这个问题是相关的,但不是解决我的问题 Python sum dict values based on keys
我有这样的口述
{
...
"httpXYZ_ACTION1": [10, 0],
"http123_ITEM1": [0.055, 0.0875],
"http456_ACTION1": [0.01824, 0.066667],
"httpABC_ITEM2": [1214.666667, 1244.195833],
"http999_ACTION2": [null, 213],
...
}
我所期望的结果就是这样的结论
^{pr2}$以此类推:-)
我试过了
sum(filter(None, chain(*[value for key, value in DICT if key.endswith(('_ACTION1', '_ACTION2', '_ITEM1'))])))
很明显,把所有的东西都归纳成一个数字
不知道
null
来自何处,但您可以使用str.查找要提取部分子字符串和defaultdict
来处理重复键:如果null实际上为“无”,则将其过滤掉:
^{pr2}$或者只保留数字:
在python 3中运行:
^{pr2}$请注意,我将您的
null
值视为None
,它被视为零,即被忽略。怎么总结就看你了。在相关问题 更多 >
编程相关推荐