# Python进阶篇-012. 数据处理基础函数（二）

\[toc]

### 一、创作声明

进阶篇是对基础篇的补充，这里面更多的是各种常用库、高级语法糖的教程，因此，进阶篇的内容会比较零碎。在创作过程中，同样会借助ChatGPT来辅助。

### 二、filter和sort

在Python中，filter和sort是两个常用的函数，用于对列表进行筛选和排序。

#### 1、filter

filter函数用于筛选出符合条件的元素，其语法如下：

```python
filter(function, iterable)
```

其中，function是一个函数，用于判断每个元素是否符合条件，iterable是一个可迭代对象，如列表、元组等。filter函数会返回一个迭代器，其中包含了所有符合条件的元素。

下面是一个示例，筛选出列表中的偶数：

```python
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

def is_even(num):
    return num % 2 == 0

even_numbers = list(filter(is_even, numbers))
print(even_numbers)  # 输出 [2, 4, 6, 8, 10]
```

#### 2、sort

sort函数用于对列表进行排序，其语法如下：

```python
sort(iterable, key=None, reverse=False)
```

其中，iterable是一个可迭代对象，如列表、元组等，key是一个函数，用于指定排序的依据，默认为None，reverse是一个布尔值，用于指定是否降序排序，默认为False。

下面是一个示例，对列表中的数字进行升序排序：

```python
numbers = [5, 2, 8, 1, 9, 3, 6, 4, 7]

sorted_numbers = sorted(numbers)
print(sorted_numbers)  # 输出 [1, 2, 3, 4, 5, 6, 7, 8, 9]
```

需要注意的是，sort函数会直接修改原列表，而sorted函数会返回一个新的排序后的列表。

### 三、写在最后

更多技术分享，点击传送门：https://github.com/maxiaolu66/profile
