Python中排序函数sorted的用法
sorted()
是 Python 内置的一个函数,用于对可迭代对象进行排序。
- 基本用法
# 对列表进行排序
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_numbers = sorted(numbers)
print(sorted_numbers) # 输出: [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
- 自定义排序
# 自定义排序
students = [{'name': 'Alice', 'age': 20},
{'name': 'Bob', 'age': 18},
{'name': 'Charlie', 'age': 22}]
# 按照年龄排序
sorted_students = sorted(students, key=lambda student: student['age'])
print(sorted_students)
# 输出: [{'name': 'Bob', 'age': 18}, {'name': 'Alice', 'age': 20}, {'name': 'Charlie', 'age': 22}]
- 反向排序
# 反向排序
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
sorted_numbers = sorted(numbers, reverse=True)
print(sorted_numbers) # 输出: [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
- 原地排序
# 原地排序
numbers = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
numbers.sort()
print(numbers) # 输出: [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
- 对字符串进行排序
# 对字符串进行排序
strings = ["apple", "banana", "cherry", "date", "elderberry"]
sorted_strings = sorted(strings)
print(sorted_strings) # 输出: ['apple', 'banana', 'cherry', 'date', 'elderberry']
- 结合使用
reverse
和key
# 结合使用 reverse 和 key
students = [{'name': 'Alice', 'age': 20},
{'name': 'Bob', 'age': 18},
{'name': 'Charlie', 'age': 22}]
# 按照名字的长度进行反向排序
sorted_students = sorted(students, key=lambda student: len(student['name']), reverse=True)
print(sorted_students)
# 输出: [{'name': 'Charlie', 'age': 22}, {'name': 'Alice', 'age': 20}, {'name': 'Bob', 'age': 18}]
以上是 sorted()
函数的一些常见用法,可以根据实际需求进行组合和使用。
评论已关闭