【问题标题】:Bracket for values in dictionary python 3字典python 3中值的括号
【发布时间】:2019-02-13 03:15:16
【问题描述】:

我想知道如何为该键的值管理括号[]。例如,一个名为“diamond”的字典包含 = {'a':'Roger', 'c':'Rafael', 'b':'Roger'}。我应该重新组织 diamond 中的数据,使其变为 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 个值,它应该像 ['','',''] 那样组织。

【问题讨论】:

    标签: python-3.x dictionary brackets


    【解决方案1】:

    你应该使用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)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-11-26
      • 2016-05-28
      • 2022-10-24
      • 1970-01-01
      • 2017-02-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多