-1

我只需要将字典列表中的值传递给函数。字典列表如下所示

[ { "positive" : 515, "neutral" : 22, "negative": 1515 },
  { "positive": 15555, "neutral": 2525, "negative": 111}
  ......
]

我需要将一个键的所有数字放入一个列表中,这样我就可以将它传递给这个函数(如下)。(它不应该是这样的,这是我能够做到的唯一解决方案)。我需要一些更有效的解决方案,也许是带有map function 或list comprehensions的东西,但我不知道如何使用这些。

bar_chart.add('neutral', [ dictList[0]['neutral'],dictList[1]['neutral'],dictList[2]['neutral'] ....... ['neutral'],dictList[23]['neutral'] ] )
bar_chart.add('positive', [ dictList[0]['positive'],dictList[1]['positive'],dictList[2]['positive'], ......... ,dictList[23]['positive'] ] )
4

2 回答 2

0
    dictlist =[ { "positive" : 515, "neutral" : 22, "negative": 1515 },
             { "positive": 15555, "neutral": 2525, "negative": 111}]

    poslist = []
    neutlist = []
    neglist = []
    for stuff in dictlist:
            poslist.append(stuff["positive"])
            neutlist.append(stuff["neutral"])
            neglist.append(stuff["negative"])

然后,您将只有相应列表中的值...

于 2014-06-16T16:56:06.737 回答
0

这应该在一行中处理它:

[bar_chart.add(key,[item[key] for item in dictList]) for key in dictList[0].keys()]

理解为您的字典列表(称为 as item)中的所有常用键组合列表,然后将键和值传递到您的bar_chart.add方法中。

理解本身会产生一个公共键值列表:

>>> [[item[key] for item in dictList] for key in dictList[0].keys()]
[[515, 15555], [22, 2525], [1515, 111]]

祝你好运!

于 2014-06-16T18:02:41.817 回答