如何在 Python 中遍历具有多个键/子键的 JSON 文件?


可以使用 Python 中的 json 模块解析 JSON 文件。此模块解析 json 并在 dict 中放置。然后可以像普通 dict 一样获取这些值。例如,如果你有一个包含以下内容的 json -

{
   "id": "file",
   "value": "File",
   "popup": {
      "menuitem": [
         {"value": "New", "onclick": "CreateNewDoc()"},
         {"value": "Open", "onclick": "OpenDoc()"},
         {"value": "Close", "onclick": "CloseDoc()"}
      ]
   }
}

示例

你可以在 Python 程序中加载它,并按以下方式循环遍历其键 -

import json
f = open('data.json')
data = json.load(f)
f.close()

# 现在可以使用 data 作为普通 dict -

for (k, v) in data.items():
   print("Key: " + k)
   print("Value: " + str(v))

输出

这将输出 -

Key: id
Value: file
Key: value
Value: File
Key: popup
Value: {'menuitem': [{'value': 'New', 'onclick': 'CreateNewDoc()'}, {'value': 'Open', 'onclick': 'OpenDoc()'}, {'value': 'Close', 'onclick': 'CloseDoc()'}]}

如果你还想迭代子值,则必须编写一个递归函数,该函数可以迭代此类树形 dict。

更新于: 05-Mar-2020

13K+ 浏览

开启你的职业生涯

完成课程并获得认证

开始
广告
© . All rights reserved.