如何打印字典的键?
我想打印一个特定的Python字典的键:
mydic = {}
mydic['key_name'] = 'value_name'
现在我可以检查一下 mydic.has_key('key_name')
,但是我想做的是打印出这个键的名字 'key_name'
。当然,我可以使用 mydic.items()
,但我并不想列出所有的键,只想要一个特定的键。比如我希望能像这样(伪代码):
print "the key name is", mydic['key_name'].name_the_key(), "and its value is", mydic['key_name']
有没有什么 name_the_key()
方法可以打印出键的名字呢?
编辑:
好的,非常感谢大家的反馈! :) 我意识到我的问题表述得不太好,而且有点简单。我只是有点困惑,因为我发现 'key_name'
和 mydic['key_name']
是两个不同的东西,我觉得在字典的上下文之外打印 'key_name'
是不正确的。但实际上我可以直接用 'key_name'
来指代这个键! :)
19 个回答
41
嗯,我觉得你可能想要做的是打印出字典里所有的键和它们对应的值,对吧?
如果是这样的话,你可以使用下面的代码:
for key in mydic:
print "the key name is" + key + "and its value is" + mydic[key]
记得用加号(+)而不是逗号(,)。因为逗号会把每个项目放在不同的行上,而加号会把它们放在同一行。
156
另外,你可以使用....
print(dictionary.items()) #prints keys and values
print(dictionary.keys()) #prints keys
print(dictionary.values()) #prints values
485
字典的定义是可以有任意数量的键,也就是说没有“唯一的键”。你可以使用 keys()
方法,这个方法会给你一个包含所有键的 Python list
。还有一个 iteritems()
方法,它会返回键值对。
for key, value in mydic.iteritems() :
print key, value
这是 Python 3 版本:
for key, value in mydic.items() :
print (key, value)
所以你可以获取这些键,但它们只有和对应的值结合在一起时才有意义。希望我理解了你的问题。