站内公告:

我们的虚拟社区正式开通了

Main Menu

python sort 和sorted 区别

作者 jvip_chen, 2022-4月-13 09:39 上午

« 上一篇主题 - 下一篇主题 »

jvip_chen

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)