python - 循环遍历字符串python中的json数组
问题描述
我有一个字符串,我创建了一个包含字符串和值的 JSON 数组:
amount = 0
a = "asaf,almog,arnon,elbar"
values_li={'asaf':'1','almog':'6','elbar':'2'}
如何创建一个循环来搜索其中的所有项目values_li
以及a
它会找到的每个项目
amount = amount + value(the value that found from value_li in a)
我试图这样做,但它不起作用:
for k,v in values_li.items():
if k in a:
amount = amount + v
解决方案
collections.Counter()
是你的朋友:
from collections import Counter
a = "asaf,almog,arnon,elbar"
values_li = Counter({'asaf':1,'almog':6,'elbar':2})
values_li.update(a.split(','))
values_li
这将导致:
Counter({'almog': 7, 'elbar': 3, 'asaf': 2, 'arnon': 1})
如果您想要 中所有值的总和values_li
,您可以简单地执行以下操作:
sum(values_li.values())
13
对于您的示例中的键/值对,这将导致,。
推荐阅读
- azure-data-factory - 从 REST API 获取数据并将其存储在 Azure Data Lake 中
- javascript - 表单中的Min-Max复选框选择【代码修改帮助】
- r - 在 r 中插入缺少时间的行
- python - DRF:int() 参数必须是字符串、类似字节的对象或数字,而不是“DeferredAttribute”
- gmail-api - 消息插入 - 添加外部标签
- java - 通过 AbstractAjaxTimerBehavior 控制检票口组件的可见性
- azerothcore - Spellfamily,Spellfamilyflags - 它们如何相互交互以及核心
- php - Where 子句什么也得不到 & (local.ERROR: Undefined variable: meeting) 即使已定义
- html - 为什么我们在 HTML 中没有 role=logo?
- html - 背景图像上的颜色未放置