Appearance
排序
- 对列表进行排序
- 对元组进行排序
- 对字符串进行排序
sort()
sort()方法用于对列表进行排序,默认是升序排序。sort()方法会改变原列表。
python
ls = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
# 升序排序
ls.sort()
print(ls) # [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
# 降序排序
ls.sort(reverse=True)
print(ls) # [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]sorted()
sorted()函数用于对列表进行排序,默认是升序排序。sorted()函数返回一个新的列表,不会改变原列表。
python
ls = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
# 升序排序
ls = sorted(ls)
print(ls) # [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
# 降序排序
ls = sorted(ls, reverse=True)
print(ls) # [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]- 复杂排序对列表中的元素进行排序,默认是升序排序。
- 可以使用
key排序函数 来指定排序的依据。 - 可以使用
reverse参数来指定排序的方向。
python
# 升序排序
ls = [{"name": "zhangsan", "age": 18}, {"name": "lisi", "age": 32},{"name": "wangwu", "age": 19}]
ls = sorted(ls, key=lambda x: x["age"])
print(ls) # [{'name': 'zhangsan', 'age': 18}, {'name': 'wangwu', 'age': 19}, {'name': 'lisi', 'age': 32}]
# 降序排序
def fn(item):
return item['age']
ls = [{"name": "zhangsan", "age": 18}, {"name": "lisi", "age": 32},{"name": "wangwu", "age": 19}]
ls = sorted(ls, key=fn, reverse=True)
print(ls) # [{'name': 'lisi', 'age': 32}, {'name': 'wangwu', 'age': 19}, {'name': 'zhangsan', 'age': 18}]