【问题标题】:Python json API format to dataframePython json API 格式到数据框
【发布时间】:2020-01-10 06:28:59
【问题描述】:

我有一个问题,非常感谢您的意见。

我需要的是使用一个库,但是出于好奇,我想使用另一个库来解决这个问题。

我正在从世界银行 API 中提取数据并绘制一段时间内的人口图表。这是使用方法 1 工作的,但我很想让它在第二种方法中工作。

希望这证明我不需要为家庭作业做点什么:) 我在解析列表、字典等方面有困难。

列表 1(工作)= 包含多个字典(仅字典)的列表,其中包含我需要的内容 = 我可以循环并提取我需要的内容

dIRL_POP = dict([(int(d['date']), float(d['value'])) for d in data if d['value'] is not None])

dIRL_POP 是我循环遍历列表数据 d 次并从字典中提取日期和值的新字典

代码

import wbdata

data = wbdata.get_data("SP.POP.TOTL", country="IRL") #list

dIRL_POP = dict([(int(d['date']), float(d['value']))

for d in data if d['value'] is not None])

评论:dIRL_POP 是我循环遍历列表数据 d 次并从字典中提取日期和值的新字典

列表 2(未解决)= 列表包含多个字典列表和多个字典。至于第一点,只有字典列表是有趣的。如何忽略字典而只查看列表?

代码

uri = 'http://api.worldbank.org/v2/country/irl/indicator/SP.POP.TOTL?format=json'

connIRL= requests.get(uri)

connIRL_response = connIRL.json()

【问题讨论】:

    标签: python json dataframe python-requests


    【解决方案1】:

    您可以使用 isinstance 来检查元素的类型。

    mylist = [[{1: 2, 3:3}], {1: 2, 3:3}, [{2: 3, 4:5}], {2: 3, 4:5}]
    list_of_lists = [elem for elem in mylist if isinstance(elem, list)]
    print(list_of_lists)
    

    [[{1:2, 3:3}], [{2:3, 4:5}]]

    【讨论】:

    • 谢谢,这正是我所需要的 :)
    猜你喜欢
    • 1970-01-01
    • 2017-09-25
    • 2017-08-25
    • 1970-01-01
    • 2021-07-23
    • 1970-01-01
    • 2017-05-14
    • 1970-01-01
    • 2021-10-04
    相关资源
    最近更新 更多