从dict中读取,dict是python中的dict列表
我想检查python dict中键值的条件。我的dict是一个json响应,如下所示:从dict中读取,dict是python中的dict列表,python,Python,我想检查python dict中键值的条件。我的dict是一个json响应,如下所示: result = {'arc': [{'empid':'S45', 'empname':'abc', 'empage':45, 'status':0, 'location': 'USA'}, {'empid':'S46',
result = {'arc': [{'empid':'S45',
'empname':'abc',
'empage':45,
'status':0,
'location': 'USA'},
{'empid':'S46',
'empname':'xyz',
'empage':34,
'status':1,
'location': 'USA'},
{'empid':'S47',
'empname':'oop',
'empage':36,
'status':1,
'location': 'UAE'}
]}
我想检查“status”值,如果为0,则将其替换为“deactivate”。此操作仅适用于“地点”:“美国”
以下是我带来的:
data = result.values()
for i in data:
for dict in i:
for item in dict.values():
print(item)
请通过迭代每个键:值对来帮助检查条件。首先,您需要在
结果['arc']
中迭代dict的每个元素,然后如果状态为0
且位置为USA
则将元素替换为'deactivate'
对于结果中的e['arc']:
如果e['location']=='USA'和e['status']==0:
e['status']='deactivate'
打印(结果)
要迭代的列表不是result.values()
,而是result['arc']
。您不需要在字典中迭代这些值
for arc in result['arc']:
if arc['location'] == 'USA' and arc['status'] == 0:
arc['status'] = 'deactivate'
另外,不要使用dict
或list
作为变量名,它会用这些名称替换内置函数