我有一个问题,我非常感谢您的投入。

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

我正在从世界银行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()

最佳答案

您可以使用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}]]

07-24 17:57
查看更多