2013-07-01 17 views
1

我有類型的字典創造獨特的鍵值對的UUID,同時保留字典完整性

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

的名單,我試圖通過色彩來營造的UUID。例如,我想要蘋果,番石榴和梨,它們都有鍵值對'color' : 'green'共享一個UUID,而「香蕉」,其鍵值對'color' : 'yellow'有自己的UUID。

看來我想在排序列表上做一些groupby-esque操作,然後應用UUID生成器。這是考慮它的正確方法嗎?還是有更聰明/更簡單/通常不笨的方法呢?我很難想象這一點,任何幫助將不勝感激。

回答

1
uuidmap = {} 
for d in L: 
    if d['color'] not in uuidmap: 
    uuidmap[d['color']] = generateUUID() 
    d['UUID'] = uuidmap[d['color']]