python实现对列表元素是字典的排序

python内置排序函数

python排序内置的排序函数有sort()和sorted

  • list.sort():该函数的三个参数和分别是cmp(比较函数)、key(比较的关键字)、reverse(排序结果是否反转),该函数只适用于列表,而不是任意可迭代对象

  • sorted():该函数第一个对象是一个可迭代对象,后面三个参数分别是cmp(比较函数)、key(比较的关键字)、reverse(排序结果是否反转)

  • sort排序案例

l = [2, 4, 6, 4, 7]
l.sort()
print(l)  
结果:[2,4,4,6,7]
p = [
        {
            "name": "zhangsan",
            "age": 12,
        },
        {
            "name": "lisi",
            "age": 15,
        },
        {
            "name": "wanger",
            "age": 13,
        },
        {
            "name": "mazi",
            "age": 16,
        },
        {
            "name": "lili",
            "age": 14,
        }
    ]
# 根据age进行排序,适用key参数,指定以字典的key age进行排序
p.sort(key=lambda x: x['age'])
print(p)
# 结果
[{'name': 'zhangsan', 'age': 12}, {'name': 'wanger', 'age': 13}, {'name': 'lili', 'age': 14}, {'name': 'lisi', 'age': 15}, {'name': 'mazi', 'age': 16}]

  • sorted()和list.sort()方法类似,但sorted()可以应用于任意的可迭代对象,所以应用范围不list.sort()广泛,可以应用于字符串、元组、列表、字典等可迭代对象
原文地址:https://www.cnblogs.com/hziwei/p/13353472.html