如何打印字典的键?

300 投票
19 回答
1297312 浏览
提问于 2025-04-16 17:05

我想打印一个特定的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)

所以你可以获取这些键,但它们只有和对应的值结合在一起时才有意义。希望我理解了你的问题。

撰写回答