-4

所以我在一个列表中有一堆字典,它们的键是数字,值是字符串对象。类似的东西[{0:'tom',1:'cat',2:'apache',3:'server',4:'open', 5:'now'},...],我喜欢得到类似的东西

[{0: 'tom cat apache', 1:'server',2:'open',3:'now'},...]通过将前 3 个键折叠成 1 个键并添加它们的值。这些键可能总是连续的,也可能不总是连续的或从零开始。

我可以使用 for 循环和 if 语句来做到这一点,但我的实现似乎很混乱。我敢肯定有一种pythonic方式。谢谢!

4

1 回答 1

1

由于键不一定是连续的,我能想到的最好方法是:

items = sorted(d.items())

dict(enumerate([' '.join(b for a, b in items[:3])] + [b for a, b in items[3:]]))

这是一个演示。

于 2012-12-24T03:16:36.290 回答