Python - 循环多维字典[重复]

2024-03-29

如果我解释我认为我在做什么,我希望有人能解释我哪里出错了。

我有以下字典:

ls = [{
    'The Wolf Gift (13)': {
        'cover': 'V:\\Books\\Anne Rice\\The Wolf Gift (13)\\cover.jpg',
        'author': 'Anne Rice',
        'year': '1988'
    },
    'Mummy (14)': {
        'cover': 'V:\\Books\\Anne Rice\\Mummy (14)\\cover.jpg',
        'author': 'Anne Rice',
        'year': '1989'
    },
}]

首先上面是多维字典吗?我想确保我谈论的是正确的事情。其次,我如何循环它以检索各个级别的信息。字典是动态填充的,所以我事先不知道键。

我努力了for book in ls进而book['cover']等等..但它似乎不起作用。我需要书名,然后是每本书的附加信息(封面等......)。我对 python 还很陌生。我来自 PHP,使用数组是我的面包和黄油,但 Python 正在杀死我......

Thanks


她是一个可以使用的例子,如果ls包含不止一本词典。

for dic in ls:
    for key in dic:
        print 'Book Name: %s' % (key)
        for value in dic[key]:
            print '\t%s: %s' % (value, dic[key][value])

这将产生以下输出:

Book Name: Mummy (14)
    year: 1989
    cover: V:\Books\Anne Rice\Mummy (14)\cover.jpg
    author: Anne Rice
Book Name: The Wolf Gift (13)
    year: 1988
    cover: V:\Books\Anne Rice\The Wolf Gift (13)\cover.jpg
    author: Anne Rice

或者您可以删除最后的 for 循环并直接访问密钥,如下所示:

for dic in ls:
    for key in dic:
        print 'Book Name: %s' % (key)
        print 'Publish Year: %s' % dic[key]['year']

这将给出以下输出:

Book Name: Mummy (14)
Publish Year: 1989
Book Name: The Wolf Gift (13)
Publish Year: 1988
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Python - 循环多维字典[重复] 的相关文章

随机推荐