打印数据在Python
问题描述:
如果我有一本字典,看起来像:打印数据在Python
{'first': [
{'red': ['six', 'three', 'seven', 'six']},
{'green': ['eight', 'three', 'four']}
],
'second': [
{'blue': ['one', 'five', 'three']}
]
}
我怎样才能到具体点的字典吗?例如,如何在副标题'红'下打印'第一'标题中的第二个'六'?
答
假设你的词典被称为d
你可以这样做:
print(d['first'][0]['red'][3])
- 表达
d['first']
为您提供了关键'first'
关联的值。该值是一个列表。 -
[0]
为您提供了列表中的第一个元素(顺便说一下,为什么您只有一个包含一个元素的列表?)。请注意,在Python中索引是基于0的。 - 然后你有另一个字典的值再次列表。
['red']
从此字典中提取值。 -
[3]
访问列表中的第四个元素。
+0
我只是把一个简单的例子放在一起。一般来说,我的名单有不止一个元素。谢谢您的回答。我知道它必须是这样简单的东西。 – user728166
答
print mydict["first"][0]["red"][3]
将打印项目3(第四项,因为项目0是第一项元素)。在这种情况下,它应该给你six
。
此外,你必须在这里的是包含包含包含在另一个dict
一个list
内dict
内的list
。数字索引3
访问内部list
的一部分,对dict
不是有用的。
答
对于你问的一个:
>>> a = {'first': [{'red': ['six', 'three', 'seven', 'six']}, {'green': ['eight', 'three', 'four']}], 'second': [{'blue': ['one', 'five', 'three']}]}
>>> a['first'][0]['red'][3]
'six'
你的意思是*秒* “六个一”? –
是的,对不起。我指的是第四个位置。 – user728166
'dict_name ['first'] [0] ['red'] [3]'?你是这个意思吗? – agf