1

我有一个字典列表

[{'fruit': 'apple', 'color' : 'green', 'UUID':''}, {'fruit': 'guava', 'color': 'green','UUID':''}, {'fruit': 'pear', 'color': 'green','UUID':''},{'fruit':'banana','color':'yellow'}]

我正在尝试按颜色创建 UUID。例如,我想要 apple、guava 和 pear,它们都具有'color' : 'green'共享 UUID 的键值对,而具有键值对的 'banana''color' : 'yellow'具有自己的 UUID。

似乎我想对字典列表进行某种 groupby-esque 操作,然后应用 UUID 生成器。这是正确的思考方式吗?还是有一种更聪明/更容易/通常不那么愚蠢的方法来做到这一点?我很难想象这一点,任何帮助将不胜感激。

4

1 回答 1

2
uuidmap = {}
for d in L:
  if d['color'] not in uuidmap:
    uuidmap[d['color']] = generateUUID()
  d['UUID'] = uuidmap[d['color']]
于 2013-07-01T00:36:05.233 回答