Ordenar dicionário de dicionários por valor

Eu tenho este dicionário:

statuses = {
            'pending' : {'status_for':'all', 'position':1},
            'cancelled' : {'status_for':'all','position':2},
            'approved' : {'status_for':'owner', 'position':1},
            'rejected - owner' : {'status_for':'owner', 'position':2},
            'accepted' : {'status_for':'dev', 'position':1},
            'rejected - developer' : {'status_for':'dev', 'position':3},
            'closed' : {'status_for':'dev', 'position':5},
            }

Eu também tenho uma função para puxar tudostatus_for valores de qualquerowner oudev que se parece com isso e colocá-lo em um PyQt QComboBox:

for s in statuses:
            if statuses[s]['status_for'] == "dev" or statuses[s]['status_for'] == "all":
                cb_developer_status.addItem(s.capitalize(), s)   

Eu gostaria de pedir estes peloposition valor embora. O que é uma boa maneira de fazer isso, para que, quando eu preencher pela caixa de combinação, eu a tenha em uma ordem predefinida?

Eu percebo que o trecho acima está checando por 'dev' e 'all', minha suposição agora é que eu teria que percorrer o dicionário duas vezes para obter os dois blocos separados na ordem que eu quiser (ou seja, 'all'). 'aparece antes de' dev ').

eu viesta postagem, mas não sei como converter essa resposta para algo que é um dicionário de dicionários.

questionAnswers(2)

yourAnswerToTheQuestion