Skip to content Skip to sidebar Skip to footer

How Do I Get The Highest Key In A Python Dictionary?

d = {'apple':9,'oranges':3,'grapes':22} How do I return the largest key/value? Edit: How do I make a list that has this sorted by largest to lowest value?

Solution 1:

>>> d = {'apple':9,'oranges':3,'grapes':22}
>>> v, k = max((v, k) for k, v in d.items())
>>> k
'grapes'
>>> v
22

Edit: To sort them:

>>> items = sorted(((v, k) for k, v in d.items()), reverse=True)
>>> items
[(22, 'grapes'), (9, 'apple'), (3, 'oranges')]

Solution 2:

You want to use max(). To get the largest key use:

max(d.keys())

Or:

max(d)

To get the largest value use:

max(d.values())

Solution 3:

If you want the key with the highest value from your dictionary then this is the answer.

max(d.keys(), key=d.get)

Solution 4:

max(d.values())

Edited:

The above gives you the max value. To get the key/value pair with the max value, you could do this:

sorted(d.items(), key=lambda x:x[1], reverse=True)[0]

Solution 5:

"""How do I print the key, too? """

maxval = max(d.itervalues())
maxkeys = [k for k, v in d.iteritems() if v == maxval]

Post a Comment for "How Do I Get The Highest Key In A Python Dictionary?"