字典python 3中值的括号

时间:2019-02-13 03:15:17

标签: python-3.x dictionary brackets

我想知道如何管理该键的值的括号[]。例如,一个名为“钻石”的字典,其中包含= {'a':'Roger','c':'Rafael','b':'Roger'}。我应该重新组织菱形中的数据,以使其变为rediamond = {'Rafael':['c'],'Roger':'['a','b']'}。

我的代码

def group_by_owners(files):
store = dict()
for key,value in files.items():
    if value in store:
        store[value]=(store[value], [key])
    else:
        store[value]=[key]
return store

files = {
'a': 'Rafael',
'b': 'Roger',
'c': 'Roger'
}   
print(group_by_owners(files))

我的输出

{'Rafael': (['a']), 'Roger': ['b'],['c']}

预期产量

{{'Rafael': (['a']), 'Roger': ['b','c']}

因此,如果Roger包含3个值,则其组织方式应类似于['','','']。

1 个答案:

答案 0 :(得分:0)

您应该使用defaultdict

from collections import defaultdict

diamond = {'a':'Roger', 'c':'Rafael', 'b':'Roger'}

rediamond = defaultdict(list)

for k, v in diamond.items():
    rediamond[v].append(k)