从字典创建一个新字典,每个键有多个值

时间:2013-07-31 16:53:15

标签: dictionary

我的词典基本上是这样的

d = {'book1': [('chapverse1', 'verse1'),('chapverse2','verse2')]
     'book2': [('chapverse1', 'verse1'),('chapverse2','verse2')]}

我需要做的是根据它所在的书中的内部值创建第二个字典。 类似的东西:

read through d
if book is in d

使用该图书中的值创建newdict

任何帮助将不胜感激。 这是在Python 2.7

1 个答案:

答案 0 :(得分:0)

嗯,目前还不清楚你想做什么,但我会猜测:

>>> d = {
      'book1': [('chapverse1', 'verse1'),('chapverse2','verse2')],
      'book2': [('chapverse1', 'verse1'),('chapverse2','verse2')]
    }
>>> d2 = {k: dict(v) for k, v in d.items()}
>>> d2
{
    'book1': {'chapverse1': 'verse1', 'chapverse2': 'verse2'},
    'book2': {'chapverse1': 'verse1', 'chapverse2': 'verse2'}
}

修改

>>> book = 'book2'
>>> book_dict = dict(d['book2'])
>>> book_dict
{'chapverse1': 'verse1', 'chapverse2': 'verse2'}