首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过json (python)导航

通过json (python)导航
EN

Stack Overflow用户
提问于 2019-08-07 20:33:37
回答 2查看 151关注 0票数 2

我试图在json文件中导航,但无法正确解析“头条新闻”节点。

以下是我的JSON文件:

代码语言:javascript
运行
复制
{  
   "resultsPage":{  
      "results":{  
         "calendarEntry":[  
            {
              "event":{  
                 "id":38862824,
                 "artistName":"Raphael",
               },
               "performance":[  
                  {  
                     "id":73632729,
                     "headlinerName":"Top-Secret",
                  }
               }
            ],
            "venue":{  
               "id":4285819,
               "displayName":"Sacré"
            }
         }
      }
   }

以下是我想做的事:

代码语言:javascript
运行
复制
for item in data ["resultsPage"]["results"]["calendarEntry"]:
    artistname = item["event"]["artistName"]
    headliner = item["performance"]["headlinerName"]

我不明白为什么它为'artistName‘工作,但它不工作’头条名称‘。谢谢你的帮助和解释。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-08-07 20:40:47

注意您的performance密钥:

代码语言:javascript
运行
复制
"performance":[  
                  {  
                     "id":73632729,
                     "headlinerName":"Top-Secret",
                  }
               }
            ],

你贴的那个json是畸形的。假设结构类似于:

代码语言:javascript
运行
复制
"performance":[  
                      {  
                         "id":73632729,
                         "headlinerName":"Top-Secret",
                      }

              ],

你可以:

代码语言:javascript
运行
复制
for i in item:
    i["headlinerName"]

或者就像@UltraInstinct建议的那样:

项目“性能”“headlinerName”

票数 1
EN

Stack Overflow用户

发布于 2019-08-07 20:41:16

这里有几个问题。首先,您的JSON格式不正确。你的方括号不匹配。也许你是说这样的事?我假设"calendarEntry“在这里是一个列表,其他的东西都是一个对象。通常,列表是复数的,即"calendarEntries“。

代码语言:javascript
运行
复制
{  
   "resultsPage": {
      "results": {  
         "calendarEntries": [  
            {
              "event": {  
                 "id": 38862824,
                 "artistName": "Raphael"
               },
               "performance": {
                  "id": 73632729,
                  "headlinerName": "Top-Secret"
               },
               "venue": {  
                  "id": 4285819,
                  "displayName": "Sacré"
               }
            }
         ]
      }
   }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57401962

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档