在python中显示某些参数JSON
我有一些JSON输出,例如:在python中显示某些参数JSON,python,json,Python,Json,我有一些JSON输出,例如: «somethings»: { "id": 1, "param1": 11, "param2": 12 }, { "id": 2, "param1": 21, "param2": 22 } 我只想为每个“id”显示param1。我可以使用circle进行以下操作: for i in range(0, 50): print parsed_string["somethings"][i]["param1"] 但我现在不
«somethings»:
{
"id": 1,
"param1": 11,
"param2": 12
},
{
"id": 2,
"param1": 21,
"param2": 22
}
我只想为每个“id”显示param1。我可以使用circle进行以下操作:
for i in range(0, 50):
print parsed_string["somethings"][i]["param1"]
但我现在不知道我能得到多少ID。在JSON中,它只是一个对象数组(以及解析后的Python列表),因此您可以像这样迭代所有对象:
for obj in parsed_string["somethings"]:
print(obj["param1"])
在JSON中,它只是一个对象数组(以及解析后的Python列表),因此您可以像这样迭代所有对象:
for obj in parsed_string["somethings"]:
print(obj["param1"])
如果需要显示键值,请使用以下代码
import json as json
json_string = '[{"id":"A 0","param1":"SOME DATA 1","param2":"SOME DATA 2"},' \
'{"id":"A 1","param1":"SOME DATA 2","param2":"SOME DATA 2"},' \
'{"id":"A 2","param1":"SOME DATA 2","param2":"SOME DATA 2"}]'
json_data = json.loads(json_string)
for d in json_data:
for key, value in d.iteritems():
if (key in ("param1")): # ("id", "param1")
print key, value
如果需要显示键值,请使用以下代码
import json as json
json_string = '[{"id":"A 0","param1":"SOME DATA 1","param2":"SOME DATA 2"},' \
'{"id":"A 1","param1":"SOME DATA 2","param2":"SOME DATA 2"},' \
'{"id":"A 2","param1":"SOME DATA 2","param2":"SOME DATA 2"}]'
json_data = json.loads(json_string)
for d in json_data:
for key, value in d.iteritems():
if (key in ("param1")): # ("id", "param1")
print key, value
thanx,这就是我所需要的。thanx,这就是我所需要的。为什么不直接索引到字典中呢?如果你只是索引而它不在那里,你会得到一个KeyError异常。如果该事件被视为“不可能”,或者您可以使用
try。。。除了KeyError…
之外,您可以捕获错误并继续。仅仅相信随机用户输入是完美的是一个坏主意。为什么不直接索引到字典中呢?如果你只是索引而它不在那里,你会得到一个KeyError异常。如果该事件被视为“不可能”,或者您可以使用try。。。除了KeyError…
之外,您可以捕获错误并继续。仅仅相信随机用户输入是完美的是一个坏主意。