Python中用于排序的函数是什么
发布时间:2023-09-15 19:35:53
在Python中,用于排序的函数是sorted()。sorted()是Python的内置函数,可用于按特定规则对列表、元组、字典和其他可迭代对象进行排序。
sorted(iterable, key=None, reverse=False)
参数说明:
- iterable:待排序的可迭代对象,如列表、元组等。
- key:指定一个函数,用于从每个可迭代对象中提取一个用于比较的关键字。默认值为None,表示按照元素的原始顺序进行排序。
- reverse:指定排序顺序,如果为True,则按降序排序,如果为False,则按升序排序。默认值为False。
sorted()返回一个新的已排序的列表,原始对象不受影响。
下面是一些示例展示了如何使用sorted()函数进行排序:
1. 对列表进行排序:
numbers = [9, 4, 5, 1, 7, 3] sorted_numbers = sorted(numbers) print(sorted_numbers) # [1, 3, 4, 5, 7, 9],按升序排序
2. 对元组进行排序:
fruits = ("apple", "banana", "cherry", "date")
sorted_fruits = sorted(fruits)
print(sorted_fruits) # ['apple', 'banana', 'cherry', 'date'],字母顺序排序
3. 对字典进行排序:
students = {
"Tom": 19,
"Alice": 21,
"Bob": 18,
"Charlie": 20
}
sorted_students = sorted(students.items(), key=lambda x: x[1])
print(sorted_students) # [('Bob', 18), ('Tom', 19), ('Charlie', 20), ('Alice', 21)],按年龄升序排序
4. 自定义排序规则:
names = ["Alice", "bob", "Charlie", "dave"] sorted_names = sorted(names, key=str.lower) print(sorted_names) # ["Alice", "bob", "Charlie", "dave"],按照不区分大小写的字母顺序排序
在这个例子中,使用str.lower作为key参数来指定每个字符串的小写形式作为比较的关键字,从而实现不区分大小写的排序。
总结:
通过使用sorted()函数,可以轻松对Python中的各种可迭代对象进行排序。通过自定义key参数,还可以根据特定的排序规则进行排序,从而满足不同的需求。
