2011-11-05 75 views
3

列表我只是想通过FIRST_NAME这个名单在Python排序那种字典词典的蟒

list = [ { "profile" : { "first_name" : "a", "last_name" : "b" } } , 
     { "profile" : { "first_name" : "c", "last_name" : "d" } } , 
     { "profile" : { "first_name" : "e", "last_name" : "f" } } ] 
+7

最好不要使用'list'作为变量名称 –

回答

7

排序列表本身,使用:

lst.sort(key=lambda x: x['profile']['first_name']) 

为了保持lst未排序并返回排序列表使用:

sorted(lst, key=lambda x: x['profile']['first_name']) 
+0

我已经尝试了解决方案,但它返回'None'。 –

+0

@AtulMakwana - 许多人使用'.sort()'语法而不是'sorted()' – Jonathan

9

这应做到:

>>> sorted(lst, key=lambda x: x['profile']['first_name'])