利用Python中的sorted()函数进行排序操作
发布时间:2023-07-03 18:27:37
Python中的sorted()函数是一个内置函数,用于对可迭代对象进行排序操作。sorted()函数可以对列表、元组、集合和字典等数据类型进行排序。
sorted()函数的基本语法如下:
sorted(iterable, key=None, reverse=False)
- iterable:表示待排序的可迭代对象,如列表、元组等。
- key:表示排序的关键字,用于指定排序时使用的函数。默认值为None,表示按照元素的大小进行排序。
- reverse:表示是否反向排序,默认为False,表示升序排序。
下面我们来看几个例子,说明如何使用sorted()函数进行排序操作。
1. 对列表进行升序排序:
nums = [5, 2, 9, 1, 7] sorted_nums = sorted(nums) print(sorted_nums)
输出结果为:[1, 2, 5, 7, 9]
2. 对列表进行降序排序:
nums = [5, 2, 9, 1, 7] sorted_nums = sorted(nums, reverse=True) print(sorted_nums)
输出结果为:[9, 7, 5, 2, 1]
3. 对元组进行排序:
names = ('Tom', 'Jerry', 'Alice', 'Bob')
sorted_names = sorted(names)
print(sorted_names)
输出结果为:['Alice', 'Bob', 'Jerry', 'Tom']
4. 对集合进行排序:
fruits = {'apple', 'banana', 'orange', 'pineapple'}
sorted_fruits = sorted(fruits)
print(sorted_fruits)
输出结果为:['apple', 'banana', 'orange', 'pineapple']
5. 对字典按值进行排序:
scores = {'Tom': 90, 'Jerry': 80, 'Alice': 95, 'Bob': 85}
sorted_scores = sorted(scores.items(), key=lambda x: x[1], reverse=True)
print(sorted_scores)
输出结果为:[('Alice', 95), ('Tom', 90), ('Bob', 85), ('Jerry', 80)]
上述例子分别展示了对列表、元组、集合和字典的排序操作。可以发现,在对字典排序时,需要使用items()方法将字典转化为可迭代对象,并且通过指定key参数以及使用lambda函数对values进行排序。
总结来说,sorted()函数是实现排序操作的常用函数,它可以对各种类型的可迭代对象进行排序。在使用sorted()函数时,需要根据实际问题选择适当的key函数或者指定reverse参数来实现所需的排序方式。
