Python中sorted()函数的代码示例:实战应用,巩固理解
发布时间: 2024-06-23 23:37:15 阅读量: 72 订阅数: 25
![Python中sorted()函数的代码示例:实战应用,巩固理解](https://ucc.alicdn.com/pic/developer-ecology/kisy6j5ipul3c_67f431cd24f14522a2ed3bf72ca07f85.jpeg?x-oss-process=image/resize,s_500,m_lfit)
# 1. Python中sorted()函数的基本用法
sorted()函数是Python中用于对可迭代对象(如列表、元组、字典等)进行排序的内置函数。其基本语法如下:
```python
sorted(iterable, key=None, reverse=False)
```
其中:
* `iterable`:要排序的可迭代对象。
* `key`:可选参数,用于指定排序依据的函数或属性。
* `reverse`:可选参数,指定是否反转排序结果(默认为False)。
sorted()函数返回一个新的已排序列表,而不会修改原始可迭代对象。
# 2. sorted()函数的应用实践
### 2.1 排序列表和元组
sorted()函数最基本的功能是排序列表和元组。其语法如下:
```python
sorted(iterable, key=None, reverse=False)
```
其中:
* `iterable`:要排序的可迭代对象,如列表或元组
* `key`:可选的排序键函数,用于指定排序依据
* `reverse`:可选的布尔值,指定是否反转排序结果
**代码块:**
```python
# 排序列表
nums = [5, 2, 8, 3, 1]
sorted_nums = sorted(nums)
print(sorted_nums) # 输出:[1, 2, 3, 5, 8]
```
**逻辑分析:**
此代码块使用sorted()函数对列表`nums`进行排序,默认情况下按照元素本身的值进行升序排序。
### 2.2 排序字典
sorted()函数也可以用于排序字典。其语法与排序列表类似,但需要注意的是,字典是根据键进行排序的,而不是值。
**代码块:**
```python
# 排序字典
person = {'name': 'John', 'age': 30, 'city': 'New York'}
sorted_person = sorted(person.items())
print(sorted_person) # 输出:[('age', 30), ('city', 'New York'), ('name', 'John')]
```
**逻辑分析:**
此代码块使用sorted()函数对字典`person`进行排序,默认情况下按照键的字母顺序进行升序排序。
### 2.3 排序自定义对象
sorted()函数还可以用于排序自定义对象。为此,需要实现一个`__lt__()`方法,用于比较两个对象的大小。
**代码块:**
```python
class Student:
def __init__(self, name, score):
self.name = name
self.score = score
def __lt__(self, other):
return self.score < other.score
# 排序自定义对象
students = [
Student('Alice', 90),
Student('Bob', 80),
Student('Carol', 95)
]
sorted_students = sorted(students)
print(sorted_students) # 输出:[Studen
```
0
0