如何创建词典列表的词典

时间:2018-12-14 18:23:06

标签: python list dictionary

我需要创建词典列表的字典,或者是否有其他方法可以满足以下要求:

我有一组钥匙可以说     键= [1,2,3,4,5](不要将其视为列表,但我只是在显示我要说5个键)

对于每个键,我都会有一组键值对,因此下面会显示一些内容:

d = {
    1:{
        {'one': 'test', 'two': 'new', 'three': 'dummy'}
        {'one': 'testtest', 'two': 'newnew', 'three': 'dummyextra'}
        {'one': 'newvalue', 'two': 'newvalue2', 'three': 'newvalue4'}
    }
    2:{
        {'one': 'test1', 'two': 'new1', 'three': 'dummy1'}
        {'one': 'testtest2', 'two': 'newnew2', 'three': 'dummyextra2'}
        {'one': 'newvalue3', 'two': 'newvalue23', 'three': 'newvalue43'}
    }
    1:{
        {'one': 'test', 'two': 'new', 'three': 'dummy'}
        {'one': 'testtest', 'two': 'newnew', 'three': 'dummyextra'}
        {'one': 'newvalue', 'two': 'newvalue2', 'three': 'newvalue4'}
    }

}

所有内部和外部词典将通过循环形成。

如果由于唯一键而无法实现上述目的,那么获取上述格式的数据(字典列表或列表字典或其他内容)的替代解决方案是什么。

在我的主要议程之上,我将拥有一个唯一的标签,它将作为外部字典的键,并使用该标签创建一个HTML标头, 在该标题下,我将填充数据(即多个链接),并且内部数据必须来自示例中的内部字典。

因此,在此示例中,我有一个标题为1的html页面,在此标题下,我将具有3个来自内部词典的链接。

比起我,标题2下还有3个链接,依此类推。

请帮助我实现这一目标。

谢谢

2 个答案:

答案 0 :(得分:0)

您只需用bent而不是[]来表示列表,并且不要忘记用逗号({})来分隔元素:

,

答案 1 :(得分:0)

尝试猜测与输入(dlist)类似的东西,只是如何使用列表作为默认值并附加数据来构建字典:

dlist = [[2, {'two': 'two1'}], [1, {'one': 'one1'}], [1, {'one': 'one2'}], [2, {'two': 'two2'}] ]

res = {}
for item in dlist:
    res.setdefault(item[0], list()).append(item[1])

print(res)
#=> {1: [{'one': 'one1'}, {'one': 'one2'}], 2: [{'two': 'two1'}, {'two': 'two2'}]}
相关问题