【问题标题】:Python 3. Extract data from jsonPython 3. 从 json 中提取数据
【发布时间】:2015-12-14 19:27:27
【问题描述】:

如何提取41677?

我的 json:

{"41677":{"key":"ilya","premium":"true"}}

我的代码:

params={"id": "ilya", "fmt": "json"}
r=requests.get("somesite", params=params )
data=json.loads(r.text)

【问题讨论】:

    标签: python json python-3.x


    【解决方案1】:

    通过使用loads,您的 JSON 字符串将被转换为将键映射到值的字典。

    由于您需要密钥41677,您只需调用data.keys()[0] 即可检索字典的第一个密钥。

    编辑:

    此外,如果您有该 JSON 结构的列表,则可以使用 items 函数迭代键和值,如下所示:

    for key, value in data.items():
        print key  # 41677
        print value  # {"key":"ilya","premium":"true"}
    

    【讨论】:

      【解决方案2】:

      通过使用 Requests 的内置 json 属性:

      data = requests.get("somesite", params=params ).json().keys()[0]
      

      假设它返回的 json 是 {"41677":{"key":"ilya","premium":"true"}}:

      >>>print data
      "41677"
      

      【讨论】:

        【解决方案3】:
        import json
        s = {"41677":{"key":"ilya","premium":"true"}}
        d = json.dumps(s)
        l = json.loads(d)
        l.keys()
        

        【讨论】:

        • 请不要只转储代码。解释为什么这是一个答案!
        猜你喜欢
        • 2023-04-07
        • 1970-01-01
        • 2021-11-24
        • 2017-04-16
        • 2020-05-06
        • 2020-06-28
        • 2017-12-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多