我是Python的新手,我一直试图让Pars的名字变得更糟,并且很难这样做。
我需要解析fNames ...
{"values":
{"entries":"uri", "type":"xs:string", "unique-value":
[{"entry":1, "fName":"\/abc.txt"},
{"entry":1, "fName":"\/def.txt"},
{"entry":1, "fName":"\/xyz.txt"},
{"entry":1, "fName":"\/file.doc"},
{"entry":1, "fName":"\/file2.txt"}
]
}
}
这是我的代码:
for entry in j['values']['entries']:
print entry['entry']['fName']
答案 0 :(得分:1)
我不确定你的解析是什么意思,但如果你只是想得到fName的值,你可以简单地遍历列表:
import json
text = """{.....}"""
json_data = json.loads(text)
for value in json_data['values']['unique-value']:
print "entry:", value['entry'], "-- fName:", value['fName']
<强>输出:强>
entry: 1 -- fName: /abc.txt
entry: 1 -- fName: /def.txt
entry: 1 -- fName: /xyz.txt
entry: 1 -- fName: /file.doc
entry: 1 -- fName: /file2.txt
您的代码无法正常工作的原因是因为entry
和fName
都是来自同一字典的键/值。这意味着要使代码正常工作,json布局必须如下所示:
[{"entry": {"fName": "/abc.txt"}}, {"entry": {"fName": "/def.txt"}}]