【问题标题】:how to read multiple json values?如何读取多个json值?
【发布时间】:2019-04-26 00:28:28
【问题描述】:

我有以下 json 输出:

{
  "status" : "success",
  "data" : {
    "class" : "4A",
    "students" : [
      {
        "name" : "Peter",
        "lastname" : "Henderson",
        "grades" : [
          {
            "subject" : "math",
            "score" : "A"
          },
          { 
            "subject" : "english",
            "score" : "B"
          }
        ]
      },
      {
        "name" : "Nick",
        "lastname" : "Simons",
        "grades" : [
          {
            "subject" : "math",
            "score" : "B"
          },
          {
            "subject" : "english",
            "score" : "C"
          }
        ]
      }
    ]
  }
}

我不知道如何打印每个学生的所有成绩。

我假设您需要一个 for 循环来遍历所有学生,然后再进行一个 for 循环来检查他们的所有成绩,但我在 python 中找不到此语法。

希望有人知道如何解决此问题,感谢您抽出宝贵时间!

【问题讨论】:

  • 修复什么?我在这里看到一个要求,而不是解决问题的尝试

标签: python json


【解决方案1】:

如果您使用以下代码,response 就是您的json

data = response['data']['students']

for student in data:
    print('{} {}:'.format(student['name'], student['lastname']))
    for grade in student['grades']:
        print('\t{} - {}'.format(grade['subject'], grade['score']))

这就是你会得到的:

Peter Henderson:
        math - A
        english - B
Nick Simons:
        math - B
        english - C

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-12-14
    • 1970-01-01
    • 2018-08-31
    • 1970-01-01
    • 2021-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多