Невозможно отсортировать диктат только для того, чтобы получить представление сортированного дикта. Dicts по своей природе на порядок меньше, а другие типы, такие как списки и кортежи, - нет. Таким образом, вам нужно отсортированное представление, которое будет списком - вероятно, списком кортежей. Например,
'''
Sort the dictionary by score. if the score is same then sort them by name
{
'Rahul' : {score : 75}
'Suhas' : {score : 95}
'Vanita' : {score : 56}
'Dinesh' : {score : 78}
'Anil' : {score : 69}
'Anup' : {score : 95}
}
'''
import operator
x={'Rahul' : {'score' : 75},'Suhas' : {'score' : 95},'Vanita' : {'score' : 56},
'Dinesh' : {'score' : 78},'Anil' : {'score' : 69},'Anup' : {'score' : 95}
}
sorted_x = sorted(x.iteritems(), key=operator.itemgetter(1))
print sorted_x
выход:
[('Vanita', {'score': 56}), ('Anil', {'score': 69}), ('Rahul', {'score': 75}), ('Dinesh', {'score': 78}), ('Anup', {'score': 95}), ('Suhas', {'score': 95})]