2017-08-24 52 views
0

我抽出一本字典的一部分与如何提取从嵌套的字典中的键值对,并输出在JSON

with open(output_filename, "w") as outfile: 
    json.dump(data['metadata'], outfile) 

所以,我得到“元数据”的价值,并没有任何键值对之前。我该如何修改它,以便我还可以在密钥本身('元数据')出现在值之前的输出中?我想这

for key in my_dict.keys(): 
    if key is "metadata": 
     val = my_dict[key] 

,然后使用json.dump(val, outfile)而是创建了一个错误global name val is not defined(我把它定义为一个全局变量较早尝试修复以前的错误消息)。我不能只使用“数据”本身,因为我想排除的数据中有一个关键值对。

+1

请注意,'json.dump'只能转储JSON的实际意义,因此如果您希望该键也出现在您的输出中,而不是您可能想要输出的是仅由一个关键:'json.dump({'metadata':data ['metadata']},outfile)' – Hamms

+0

工作!谢谢。 – topplethepat

回答

2
with open(output_filename, "w") as outfile: 
    json.dump({'metadata': data['metadata']} , outfile) 
相关问题