【发布时间】:2017-02-11 14:07:16
【问题描述】:
我有字典
{
"count_casinos": 4,
"casinos": {
"16": {
"fields": [
{"casino_logo": "assets/images/crown.png"},
{"raiting_casino": "9"},
{"bonus_code": "AX7772"},
{"bonus_summa": "200"},
{"bonus_min_depozit": "1000000"},
{"bonus_veizdjer": "4"}],
"title": "Royal casino casino1"},
"17": {
"fields": [
{"casino_logo": "assets/images/crown.png"},
{"raiting_casino": "8.2"},
{"bonus_code": "AX777"},
{"bonus_summa": "200"},
{"bonus_min_depozit": "1000000"},
{"bonus_veizdjer": "4"}],
"title": "Royal casino casino3"},
"18": {
"fields": [
{"casino_logo": "assets/images/crown.png"},
{"raiting_casino": "9.3"},
{"bonus_code": "AX7772"},
{"bonus_summa": "200"},
{"bonus_min_depozit": "1000000"},
{"bonus_veizdjer": "4"}],
"title": "Royal casino casino2"},
"15": {
"fields": [
{"casino_logo": "assets/images/crown.png"},
{"raiting_casino": "9.9"},
{"bonus_code": "AX777"},
{"bonus_summa": "200"},
{"bonus_min_depozit": "1000000"},
{"bonus_veizdjer": "4"}],
"title": "Royal casino casino4"}}}
当我尝试循环时
for k,v in casino.iteritems():
for iterm in v['fields']:
print iterm['bonus_code']
key:error
怎么了?
【问题讨论】:
-
casino是提供数据的字典吗? -
@Aaron 问题不在于密钥不存在。 OP 只是没有深入到嵌套字典中来访问它。
-
你不够深入,
for k, v in casino.iteritems():只会迭代一次,对于16键。 -
第一项:` "count_casinos": 4` 将没有
['fields'] -
另外,第二个循环会分别查询列表中的每个dict,其中只有一个有
'bonus_code'字段,所以其他的都会产生key index错误
标签: python dictionary