Is there a "one-liner" way to get a list of keys from a dictionary in sorted order?

iterator, python, syntactic-sugar

Solution

for k in sorted(somedictionary.keys()):
    doSomething(k)

Note that you can also get all of the keys and values sorted by keys like this:

for k, v in sorted(somedictionary.iteritems()):
   doSomething(k, v)

Problem

The list `sort()` method is a modifier function that returns `None`. So if I want to iterate through all of the keys in a dictionary I cannot do: ``` for k in somedictionary.keys().sort(): dosomething() ``` Instead, I must: ``` keys = somedictionary.keys() keys.sort() for k in keys: dosomething() ``` Is there a pretty way to iterate through these keys in sorted order without having to break it up in to multiple steps?

Original source

Related problems