Python中列表和字典的结合

Python中列表和字典的结合,python,arrays,list,dictionary,Python,Arrays,List,Dictionary,我有一个清单,里面有一本字典,清单如下: a = [{'name': ['item1', 'item2']}] [ { 'name': 'item1', 'name': 'item2' } ] 我需要得到这样的结果: a = [{'name': ['item1', 'item2']}] [ { 'name': 'item1', 'name': 'item2' } ] 所以对于您的问题,首先您的

我有一个清单,里面有一本字典,清单如下:

a = [{'name': ['item1', 'item2']}]
[
    {
        'name': 'item1',
        'name': 'item2'
    }
]
我需要得到这样的结果:

a = [{'name': ['item1', 'item2']}]
[
    {
        'name': 'item1',
        'name': 'item2'
    }
]

所以对于您的问题,首先您的想法是错误的,因为在python的字典中,当您使用键引用数据时,不能有多个相同的键,如果存在重复项,则会出现问题

因此,解决方案可以是:

[
    {
        'name0': 'item1',
        'name2': 'item2'
    }
]

为此,您必须遍历最内层列表中的所有元素,并按照预期结果在列表中创建一个新字典,然后在内部字典中逐个添加元素,其中包含像name1、name2等键。我不确定您的要求,我建议您浏览文档

最好将字典视为一组键:值对,要求键是唯一的(在一个字典中)

因此,对于您所希望的输出,不可能使用两个相同的键来输出字典

但是你可以试试这样的

a=[{'name':['item1','item2']}]
结果_列表=[]
对于[0]['name']中的项:
result_list.append({'name':item})
打印(结果列表)
输出

[{'name':'item1'},{'name':'item2'}]

这似乎与您的要求类似。您可以使用列表索引访问各个词典。

关键字在dict中是唯一的。您不能有两个相同的键,因为您的输出语法不正确,因此不清楚您要创建什么,即语法错误
右括号']'与右括号'{'