pythondictionarykey-value

How do I print the key-value pairs of a dictionary in python


I want to output my key value pairs from a python dictionary as such:

key1 \t value1
key2 \t value2

I thought I could maybe do it like this:

for i in d:
    print d.keys(i), d.values(i)

but obviously that's not how it goes as the keys() and values() don't take an argument.


Solution

  • Python 2 and Python 3

    i is the key, so you would just need to use it:

    for i in d:
        print i, d[i]
    

    Python 3

    d.items() returns the iterator; to get a list, you need to pass the iterator to list() yourself.

    for k, v in d.items():
        print(k, v)
    

    Python 2

    You can get an iterator that contains both keys and values. d.items() returns a list of (key, value) tuples, while d.iteritems() returns an iterator that provides the same:

    for k, v in d.iteritems():
        print k, v