我想对Facebook的Graph API返回的朋友列表进行排序。排序后的结果需要按姓名按字母顺序排列。
[
{
"name": "Joe Smith",
"id": "6500000"
},
{
"name": "Andrew Smith",
"id": "82000"
},
{
"name": "Dora Smith",
"id": "97000000"
},
{
"name": "Jacki Smith",
"id": "107000"
}
]
其他说明:我在使用Python 2.5.x的Google App Engine上运行。
答案 0 :(得分:8)
sorted(flist, key=lambda friend: friend["name"])
答案 1 :(得分:3)
import operator
sorted(my_list, key=operator.itemgetter("name"))
此外,itemgetter
可以使用一些参数,并返回这些项的元组,因此您可以按如下方式对多个键进行排序:
sorted(my_list, key=operator.itemgetter("name", "age", "other_thing"))
sorted
函数返回一个新的排序列表。如果要对列表进行排序,请使用:
my_list.sort(key=operator.itemgetter("name"))
答案 2 :(得分:-1)
如果您的列表名为A
,则可以使用以下方式对其进行排序:
A.sort(cmp = lambda x,y: cmp(x["name"],y["name"]))