Python 在字典中合并列表值
我必须用PHP解决一些对我来说非常简单的问题,但我缺少了如何用Python解决这些问题 假设我有以下词典:Python 在字典中合并列表值,python,list,dictionary,merge,iteration,Python,List,Dictionary,Merge,Iteration,我必须用PHP解决一些对我来说非常简单的问题,但我缺少了如何用Python解决这些问题 假设我有以下词典: data = {'year': [], 'week': [], 'value': []} 所有列表的长度始终相同,因此数据的可能值为: {'year': ['2014', '2014', '2014'], 'week': ['44', '49', '49'], 'value': [15, 20, 30]} {'year': ['2014', '2014'], 'week': ['44'
data = {'year': [], 'week': [], 'value': []}
所有列表的长度始终相同,因此数据的可能值为:
{'year': ['2014', '2014', '2014'], 'week': ['44', '49', '49'], 'value': [15, 20, 30]}
{'year': ['2014', '2014'], 'week': ['44', '49'], 'value': [15, 50]}
我想做什么:
迭代列表“周”时:
·如果当前周的值与列表中的下一周的值相同:
··用下一周覆盖该周,用下一年覆盖该年,并用与该周相同的索引对值求和
我期望得到的:
因此,结果将是:
{'year': ['2014', '2014', '2014'], 'week': ['44', '49', '49'], 'value': [15, 20, 30]}
{'year': ['2014', '2014'], 'week': ['44', '49'], 'value': [15, 50]}
我所尝试的:
·在字典上迭代,但我对python的了解很差,在尝试为循环构建时,我遇到了一些错误,例如类型为'bool'的对象没有len()。(我已经为范围len(dictionary.index)中的I使用了结构
)
·查看了itertools
和collections
,但我找不到任何适合我的
·用一种简单的方法一步一步地尝试:将字典中的饺子列表放到另一个列表中,然后逐个比较项目,将值保存到另一个列表中,等等
有什么想法或文件需要检查吗?(除了继续学习python)使用itertools.groupby
并迭代enumerate(d['week'))
:
太棒了,我签出了groupby
,但是enumerate
是我缺少的关于如何在索引中使用它的东西,还有其他东西。。。而且,这是一种甜蜜的“蟒蛇式”方式