我有如下所示的JSON文件。我对编程非常陌生,在经历了大量的尝试和错误之后,我能够通过文件中的索引访问各个键、值,如下面的代码所示。我希望能够通过关键字搜索多个对象。例如,我想按“vedette”键搜索并返回“academie Française”、“Quai conti”、“Institut”、“Les quarante”。任何关于如何做到这一点的建议都是很好的。你知道吗
with open('DESformatted.json') as data_file:
d = json.load(data_file)
pprint (d['DES'][0]['vedette'])
[u'Acad\xe9mie fran\xe7aise']
{
"DES": [
{
"vedette": ["Académie française"],
"synonymes": [
"Institut",
"Quai Conti",
"les Quarante"
],
"liste10": [
"Institut",
"66",
"Quai Conti",
"66",
"les Quarante",
"66"
],
"cliques": [
[
"Académie française",
"Institut"
],
[
"Académie française",
"Quai Conti"
],
[
"Académie française",
"les Quarante"
]
]
},
{
"vedette": ["Quai Conti"],
"synonymes": [
"Académie française"
],
"liste10": [
"Académie française",
"200"
],
"cliques": [
[
"Académie française",
"Quai Conti"
]
]
},
{
"vedette": ["les Quarante"],
"synonymes": [
"Académie française"
],
"liste10": [
"Académie française",
"200"
],
"cliques": [
[
"Académie française",
"les Quarante"
]
]
},
{
"vedette": ["Institut"],
"synonymes": [
"Académie française",
"académie"
],
"liste10": [
"Académie française",
"100",
"académie",
"100"
],
"cliques": [
[
"Académie française",
"Institut"
],
[
"Institut",
"académie"
]
]
}
]
}
与
"DES"
相关联的值是一个对象列表,因此可以像这样迭代它们:输出:
作为其他人提供的正确
for
循环的替代方法,您可以使用list comprehension。你知道吗你可以这样做:
我在这里迭代字典
d
的DES
键中的所有值。然后我将从每次迭代中获得的vedette
值存储到vedettes
列表中。这是通过添加获得的vedette
列表和vedettes
列表来实现的,这样每个步骤中获得的vedette
列表的所有元素都会添加到最终的vedettes
列表中。你知道吗vedettes
列表包含所需的输出。你知道吗相关问题 更多 >
编程相关推荐