如何在Python中根据名称从Json对象检索基于索引的列表项

时间:2019-02-01 21:31:19

标签: json string list dictionary

例如给出下面的JSON:

{
  "success": true,
  "message": "''",
  "result": [
    {
      "buy": [
        {
          "quantity": 12.37,
          "rate": 32.55412402
        }
      ],
      "sell": [
        {
          "quantity": 12.37,
          "rate": 32.55412402
        }
      ]
    }
  ]
}

我怎么会去检索“买入”和“卖出”存储到变量? 我可以通过以下方式获得结果:

d = json.loads(string)

print(d['result'])

但是,我现在看不到如何检索购买对象。例如。我尝试过:

#print(d['result']['buy'])
#print(d['result'].buy)
#print(d['result'].indexOf('buy'))

全部无济于事。

1 个答案:

答案 0 :(得分:1)

尝试:

print(d['result'][0]['buy'])

应该给您购买对象:

[{u'rate': 32.55412402, u'quantity': 12.37}]

如果您检查type中的d['result']

print(type(d['result']))  # <type 'list'>

这是一个长度为list的{​​{1}},因此1末尾的[0]将返回列表中的第一个也是唯一的项,即您所使用的字典期望您可以像第一次尝试一样通过密钥d['result'][0]来获得:

['buy']

只需要按#print(d['result']['buy']) 索引列表即可

[0]