从Python2.7中的一个字典中获取值?

2024-04-19 18:17:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Python新手,不知道如何从json响应中获取特定值。以下是我从我使用的API中得到的信息:

{
  "data": [
    {
      "quote_precision": 18,
      "priority": 13,
      "market_rate": 6.8e-5,
      "is_traded": true,
      "is_admin_only": false,
      "id": "dc5c9c86-9bd1-4f41-bdb2-db3828a4de44",
      "display_size_precision": 8,
      "display_price_precision": 8,
      "code": "CREDO-ETH",
      "base_precision": 18
    },
    {
      "quote_precision": 2,
      "priority": 0,
      "market_rate": 0.07,
      "is_traded": true,
      "is_admin_only": false,
      "id": "21edc8e8-3179-4778-bd9e-9eb70221c982",
      "display_size_precision": 8,
      "display_price_precision": 2,
      "code": "CREDO-USD",
      "base_precision": 18
    },
    ...
  ]
}

我如何分别从每个街区获得市价?谢谢


Tags: idfalsetrueonlysizerateadminis
3条回答

你的字典里有一个叫做“data”的条目。数据是字典的列表。你可以迭代这个列表。假设您将json响应分配给someDict:

data_list = someDict["data"]
for d in data_list:
    print (d["market_rate"]) 

试试这个

 dict = {
  "data": [
    {
      "quote_precision": 18,
      "priority": 13,
      "market_rate": 6.8e-5,
      "is_traded": True,
      "is_admin_only": False,
      "id": "dc5c9c86-9bd1-4f41-bdb2-db3828a4de44",
      "display_size_precision": 8,
      "display_price_precision": 8,
      "code": "CREDO-ETH",
      "base_precision": 18
    },
    {
      "quote_precision": 2,
      "priority": 0,
      "market_rate": 0.07,
      "is_traded":True,
      "is_admin_only": False,
      "id": "21edc8e8-3179-4778-bd9e-9eb70221c982",
      "display_size_precision": 8,
      "display_price_precision": 2,
      "code": "CREDO-USD",
      "base_precision": 18
    }
  ]
}
for i in dict["data"]:
  print(i["market_rate"])

输出:

6.8电子-05

0.07个

您可以通过以下方式访问“市场价格”:

>>> for book in some_dict["data"]:
...     print (book["market_rate"])
... 
6.8e-05
0.07

或者,如果要使用数据创建新数组:

>>> [book["market_rate"] for book in some_dict["data"]]
[6.8e-05, 0.07]

相关问题 更多 >