Search code examples
pythondictionarykey

How to print a dictionary's key?


I would like to print a specific Python dictionary key:

mydic = {
    "key_name": "value"
}

Now I can check if mydic.has_key('key_name'), but what I would like to do is print the name of the key 'key_name'. Of course I could use mydic.items(), but I don't want all the keys listed, merely one specific key. For instance I'd expect something like this (in pseudo-code):

print("the key name is", mydic['key_name'].name_the_key(), "and its value is", mydic['key_name'])

Is there any name_the_key() method to print a key name?


Edit: OK, thanks a lot guys for your reactions! :) I realise my question is not well formulated and trivial. I just got confused because I realised 'key_name' and mydic['key_name'] are two different things and I thought it would be incorrect to print the 'key_name' out of the dictionary context. But indeed I can simply use the 'key_name' to refer to the key! :)


Solution

  • A dictionary has, by definition, an arbitrary number of keys. There is no "the key". You have the keys() method, which gives you a python list of all the keys, and you have the iteritems() method, which returns key-value pairs, so

    for key, value in mydic.iteritems() :
        print key, value
    

    Python 3 version:

    for key, value in mydic.items() :
        print (key, value)
    

    So you have a handle on the keys, but they only really mean sense if coupled to a value. I hope I have understood your question.