虚拟社区

程序开发 => WEB后端开发 => python3 开发 => 主题发帖人为: jvip_chen 于 2022-4月-13 09:39 上午

标题: python sort 和sorted 区别
作者: jvip_chen2022-4月-13 09:39 上午
sort 与 sorted 区别:

sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。

list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

1.字典根据键从小到大排序
dict = {"name": "zs", "age": 18, "city": "深圳", "tel": "1362626627"}

res = sorted(dict.items(), key=lambda x: x[0], reverse=False)

print(res)
new_dict = {}
for x in res:
    new_dict[x[0]] = x[1]

print(new_dict)
2. 字典排序方式二
foo = [{"name": "zs", "age": 19}, {"name": "ll", "age": 54},

       {"name": "wa", "age": 17}, {"name": "df", "age": 23}]

# 列表嵌套字典的排序,分别根据年龄和姓名排序
res = sorted(foo, key=lambda x: x["name"], reverse=False)

print(res)
3.元组排序

foo = [("zs", 19), ("ab", 2), ("t", 8)]
res = sorted(foo, key=lambda x: x[0], reverse=False)
print(res)