【问题标题】:Python - Parsing JSON Data SetPython - 解析 JSON 数据集
【发布时间】:2013-05-16 13:33:58
【问题描述】:

我正在尝试解析如下所示的 JSON 数据集:

{"data":[
    {
    "Rest":0,
    "Status":"The campaign is moved to the archive",
    "IsActive":"No",
    "StatusArchive":"Yes",
    "Login":"some_login",
    "ContextStrategyName":"Default",
    "CampaignID":1111111,
    "StatusShow":"No",
    "StartDate":"2013-01-20",
    "Sum":0,
    "StatusModerate":"Yes",
    "Clicks":0,
    "Shows":0,
    "ManagerName":"XYZ",
    "StatusActivating":"Yes",
    "StrategyName":"HighestPosition",
    "SumAvailableForTransfer":0,
    "AgencyName":null,
    "Name":"Campaign_01"
    },
    {
    "Rest":82.6200000000008,
    "Status":"Impressions will begin tomorrow at 10:00",
    "IsActive":"Yes",
    "StatusArchive":"No",
    "Login":"some_login",
    "ContextStrategyName":"Default",
    "CampaignID":2222222,
    "StatusShow":"Yes",
    "StartDate":"2013-01-28",
    "Sum":15998,"StatusModerate":"Yes",
    "Clicks":7571,
    "Shows":5535646,
    "ManagerName":"XYZ",
    "StatusActivating":"Yes",
    "StrategyName":"HighestPosition",
    "SumAvailableForTransfer":0,
    "AgencyName":null,
    "Name":"Campaign_02"
    }
    ]
}

让我们假设可以有许多这样的数据集。

我想遍历它们中的每一个并获取“名称”和“广告系列 ID”参数。

到目前为止,我的代码如下所示:

decoded_response = response.read().decode("UTF-8")
data = json.loads(decoded.response)

    for item in data[0]:
        for x in data[0][item] ...
            -> need a get name procedure
            -> need a get campaign_id procedure

可能很简单!我不擅长列表/字典:(

【问题讨论】:

  • 没有列表和字典的python有什么用?

标签: python json dictionary


【解决方案1】:

使用d[dict_key]d.get(dict_key, default)(提供默认值)访问字典:

jsonResponse=json.loads(decoded_response)
jsonData = jsonResponse["data"]
for item in jsonData:
    name = item.get("Name")
    campaignID = item.get("CampaignID")

我建议您阅读有关dictionaries 的内容。

【讨论】:

  • 成功了!万岁!还阅读所有关于字典的内容。谢谢:-)
猜你喜欢
  • 2011-07-08
  • 2017-05-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-02-03
  • 1970-01-01
  • 2023-03-22
相关资源
最近更新 更多