我有以下json,我试图解析为字典,以便我只查询“查询”中的查询,即查询1和查询2
[
{ "A": "xyz",
"B": "this is xyz",
"Queries": [
"Query 1",
"Query 2"
]
}
]
我正在使用:
import json
js=open('C://localpath//files.json')
data=json.load(js) //assuming that json.load() will make data as dictionary correct me if i am wrong
data.get("Queries")
发生以下错误
回溯(最近一次调用最后一次):文件“”,第1行,在AttributeError中:'list'对象没有属性'get'
如何将数据作为字典而不是列表并使用“查询”来获取json中的查询,我不想将其转换为列表。有没有办法直接将其作为字典处理?
答案 0 :(得分:2)
尝试以下
js = open('C:/temp/json.txt').read()
data = json.loads(js)
data[0]['A']
u'xyz'
答案 1 :(得分:1)
data
是一个词典列表。您需要将字典索引到列表中
data[0].get('Queries')
或者,如果有多个词典,您可以使用列表推导来从每个词典中获取查询
[d.get('Queries') for d in data]