如果我解释我认为我在做什么,我希望有人能解释我哪里出错了。
我有以下字典:
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(使用前将#替换为@)