如何获取默认字典对象的第二个位置?

2024-09-29 01:33:38 发布

您现在位置:Python中文网/ 问答频道 /正文

我从字典中提取一些值,以便创建另一个字典,如下所示:

from collections import defaultdict

a_lis = []
b_lis = []
for d in response['A']:
    a_lis.append(d['B'])
    b_lis.append(d['C'])
print(a_lis)
print(b_lis)

defaultdict(None, zip(a_lis,b_lis))

我决定使用默认dict,因为我希望在最终的字典中有重复的元素。但是,当我运行上述代码时,我得到以下结果:

defaultdict(None,
            {'Fruit': 'PAR',
             'Brand': 'best',
             'date': 'imorgon',
             'type': 'true',
             'class': 'Första klass',
             'time': '2018-10-25',
             'number': 10})

如何获取元组的第二个元素以获得:

            {'Fruit': 'PAR',
             'Brand': 'best',
             'date': 'imorgon',
             'type': 'true',
             'class': 'Första klass',
             'time': '2018-10-25',
             'number': 10}

我试着:

defaultdict(None, zip(a_lis,b_lis))[1]

但是它不起作用


Tags: none元素date字典typezipbestprint
1条回答
网友
1楼 · 发布于 2024-09-29 01:33:38

没有“第二个元素”,实际上没有元组。这只是正在打印默认值的defaultdict的一个表示,即无。你可以像其他人一样访问dict:

d = defaultdict(None,
        {'Fruit': 'PAR',
         'Brand': 'best',
         'date': 'imorgon',
         'type': 'true',
         'class': 'Första klass',
         'time': '2018-10-25',
         'number': 10})

print(d['Fruit'])  #  -> 'PAR'

(虽然我不明白你在这里使用defaultdict的理由;由于您的默认值为“无”,因此它对“重复元素”没有任何帮助。)

相关问题 更多 >